mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
EA-133948 - CME: Intrinsics.areEqual
GitOrigin-RevId: b19c866fa8a270b8679ee17f98714318140ae9d6
This commit is contained in:
committed by
intellij-monorepo-bot
parent
1efa4864e5
commit
4c935e1ed5
@@ -12,6 +12,7 @@ import com.intellij.openapi.roots.OrderRootType
|
||||
import com.intellij.openapi.roots.SyntheticLibrary
|
||||
import com.intellij.openapi.roots.ex.ProjectRootManagerEx
|
||||
import com.intellij.openapi.util.EmptyRunnable
|
||||
import com.intellij.openapi.util.Key
|
||||
import com.intellij.openapi.util.registry.Registry
|
||||
import com.intellij.openapi.vfs.VirtualFile
|
||||
import com.intellij.ui.AppUIUtil
|
||||
@@ -40,16 +41,21 @@ class AlternativeSdkRootsProvider : AdditionalLibraryRootsProvider() {
|
||||
}
|
||||
|
||||
companion object {
|
||||
private val storedLibs = mutableListOf<SyntheticLibrary>()
|
||||
private val ALTERNATIVE_SDK_LIBS_KEY = Key.create<Collection<SyntheticLibrary>>("ALTERNATIVE_SDK_LIBS_KEY")
|
||||
|
||||
@JvmStatic
|
||||
fun reindexIfNeeded(project: Project) {
|
||||
if (!Registry.`is`("index.run.configuration.jre")) return
|
||||
val provider = AdditionalLibraryRootsProvider.EP_NAME.findExtension(AlternativeSdkRootsProvider::class.java)!!
|
||||
val provider = EP_NAME.findExtension(AlternativeSdkRootsProvider::class.java)!!
|
||||
val additionalProjectLibraries = provider.getAdditionalProjectLibraries(project)
|
||||
if (additionalProjectLibraries != storedLibs) {
|
||||
storedLibs.clear()
|
||||
storedLibs.addAll(additionalProjectLibraries)
|
||||
val update = synchronized(ALTERNATIVE_SDK_LIBS_KEY) {
|
||||
val res = additionalProjectLibraries != project.getUserData(ALTERNATIVE_SDK_LIBS_KEY)
|
||||
if (res) {
|
||||
project.putUserData(ALTERNATIVE_SDK_LIBS_KEY, additionalProjectLibraries)
|
||||
}
|
||||
res
|
||||
}
|
||||
if (update) {
|
||||
AppUIUtil.invokeOnEdt {
|
||||
WriteAction.run<RuntimeException> {
|
||||
ProjectRootManagerEx.getInstanceEx(project).makeRootsChange(EmptyRunnable.getInstance(), false, true)
|
||||
|
||||
Reference in New Issue
Block a user