From d032a6eba5da1b7f9405b824fb1db8eac46f9c95 Mon Sep 17 00:00:00 2001 From: Dmitry Avdeev Date: Wed, 26 Apr 2017 12:45:29 +0300 Subject: [PATCH] EA-82356 - CME: SequenceIterator.next --- .../src/com/intellij/ide/RecentProjectsManagerBase.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/platform/platform-impl/src/com/intellij/ide/RecentProjectsManagerBase.java b/platform/platform-impl/src/com/intellij/ide/RecentProjectsManagerBase.java index 81b56e5e56ec..82cb06508618 100644 --- a/platform/platform-impl/src/com/intellij/ide/RecentProjectsManagerBase.java +++ b/platform/platform-impl/src/com/intellij/ide/RecentProjectsManagerBase.java @@ -355,10 +355,11 @@ public abstract class RecentProjectsManagerBase extends RecentProjectsManager im if (!isDuplicatesCacheUpdating) { isDuplicatesCacheUpdating = true; //assuming that this check happens only on EDT. So, no synchronised block or double-checked locking needed + Set names = ContainerUtil.newHashSet(); + final HashSet duplicates = ContainerUtil.newHashSet(); + ArrayList list = ContainerUtil.newArrayList(ContainerUtil.concat(openedPaths, recentPaths)); ApplicationManager.getApplication().executeOnPooledThread(() -> { - Set names = ContainerUtil.newHashSet(); - final HashSet duplicates = ContainerUtil.newHashSet(); - for (String path : ContainerUtil.newArrayList(ContainerUtil.concat(openedPaths, recentPaths))) { + for (String path : list) { if (!names.add(getProjectName(path))) { duplicates.add(path); }