diff --git a/platform/platform-impl/src/com/intellij/ide/RecentProjectsManagerBase.kt b/platform/platform-impl/src/com/intellij/ide/RecentProjectsManagerBase.kt index cae4e393bc6e..e7df32007bcf 100644 --- a/platform/platform-impl/src/com/intellij/ide/RecentProjectsManagerBase.kt +++ b/platform/platform-impl/src/com/intellij/ide/RecentProjectsManagerBase.kt @@ -261,10 +261,13 @@ open class RecentProjectsManagerBase(coroutineScope: CoroutineScope) : } } + /** + * No-op if [path] is already present in recent projects + */ fun addRecentPath(path: String, info: RecentProjectMetaInfo) { synchronized(stateLock) { - state.additionalInfo.put(path, info) - modCounter.increment() + val presentInfo = state.additionalInfo.putIfAbsent(path, info) + if (presentInfo == null) modCounter.increment() } }