mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-01-08 06:39:38 +07:00
Acquire write lock (IDEA-289174)
GitOrigin-RevId: 4b69be16c1c542c22a37dc67707b8e7c6a5c9a05
This commit is contained in:
committed by
intellij-monorepo-bot
parent
e58b4e02aa
commit
1e146dcf7b
@@ -4,6 +4,7 @@ package com.jetbrains.python.inspections;
|
||||
import com.intellij.facet.FacetManager;
|
||||
import com.intellij.ide.CommandLineInspectionProgressReporter;
|
||||
import com.intellij.ide.CommandLineInspectionProjectConfigurator;
|
||||
import com.intellij.openapi.application.Application;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.application.ReadAction;
|
||||
import com.intellij.openapi.module.Module;
|
||||
@@ -101,7 +102,7 @@ public class PythonPluginCommandLineInspectionProjectConfigurator implements Com
|
||||
: detectedSdk;
|
||||
|
||||
if (sdk != null) {
|
||||
ApplicationManager.getApplication().invokeLaterOnWriteThread(() -> ProjectJdkTable.getInstance().addJdk(sdk));
|
||||
invokeLaterOnWriteThreadUnderLock(() -> ProjectJdkTable.getInstance().addJdk(sdk));
|
||||
}
|
||||
|
||||
return sdk;
|
||||
@@ -130,10 +131,12 @@ public class PythonPluginCommandLineInspectionProjectConfigurator implements Com
|
||||
if (facet == null) {
|
||||
logger.reportMessage(3, "Setting Python facet for: " + m.getName());
|
||||
|
||||
ApplicationManager.getApplication().invokeLaterOnWriteThread(() -> {
|
||||
final PythonFacet addedFacet = facetManager.addFacet(facetType, facetType.getPresentableName(), null);
|
||||
PySdkExtKt.excludeInnerVirtualEnv(m, addedFacet.getConfiguration().getSdk());
|
||||
});
|
||||
invokeLaterOnWriteThreadUnderLock(
|
||||
() -> {
|
||||
final PythonFacet addedFacet = facetManager.addFacet(facetType, facetType.getPresentableName(), null);
|
||||
PySdkExtKt.excludeInnerVirtualEnv(m, addedFacet.getConfiguration().getSdk());
|
||||
}
|
||||
);
|
||||
}
|
||||
else {
|
||||
logger.reportMessage(3, "Python facet already here: " + m.getName());
|
||||
@@ -145,4 +148,9 @@ public class PythonPluginCommandLineInspectionProjectConfigurator implements Com
|
||||
"Skipped Python interpreter configuration for " + skippedModules + " module(s) because they don't contain any Python files"
|
||||
);
|
||||
}
|
||||
|
||||
private static void invokeLaterOnWriteThreadUnderLock(@NotNull Runnable runnable) {
|
||||
final Application application = ApplicationManager.getApplication();
|
||||
application.invokeLaterOnWriteThread(() -> application.runWriteAction(runnable));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user