diff --git a/platform/platform-impl/src/com/intellij/ide/RecentProjectsManagerBase.java b/platform/platform-impl/src/com/intellij/ide/RecentProjectsManagerBase.java index de108b2007cd..2b01404fdf76 100644 --- a/platform/platform-impl/src/com/intellij/ide/RecentProjectsManagerBase.java +++ b/platform/platform-impl/src/com/intellij/ide/RecentProjectsManagerBase.java @@ -57,7 +57,7 @@ public abstract class RecentProjectsManagerBase implements PersistentStateCompon private State myState = new State(); - private final Map myNameCache = new HashMap(); + private final Map myNameCache = Collections.synchronizedMap(new HashMap()); public RecentProjectsManagerBase(ProjectManager projectManager, MessageBus messageBus) { projectManager.addProjectManagerListener(new MyProjectManagerListener()); @@ -266,23 +266,17 @@ public abstract class RecentProjectsManagerBase implements PersistentStateCompon @NotNull private String getProjectName(String path) { - synchronized (myNameCache) { - String cached = myNameCache.get(path); - if (cached != null) { - return cached; - } + String cached = myNameCache.get(path); + if (cached != null) { + return cached; } String result = readProjectName(path); - synchronized (myNameCache) { - myNameCache.put(path, result); - } + myNameCache.put(path, result); return result; } public void clearNameCache() { - synchronized (myNameCache) { - myNameCache.clear(); - } + myNameCache.clear(); } private static String readProjectName(String path) {