From 72030ee94ee0b03f6972016500387a774d17a5ab Mon Sep 17 00:00:00 2001 From: Ilya Kirillov Date: Fri, 24 Apr 2020 22:28:23 +0300 Subject: [PATCH] Wizard: do not run whole JPS project importing in write action --- .../projectWizard/wizard/service/IdeaJpsWizardService.kt | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/idea/idea-new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/wizard/service/IdeaJpsWizardService.kt b/idea/idea-new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/wizard/service/IdeaJpsWizardService.kt index 3953ae7e4ed..0b58e51da62 100644 --- a/idea/idea-new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/wizard/service/IdeaJpsWizardService.kt +++ b/idea/idea-new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/wizard/service/IdeaJpsWizardService.kt @@ -61,7 +61,7 @@ class IdeaJpsWizardService( path: Path, modulesIrs: List, buildSystem: BuildSystemType - ): TaskResult = runWriteAction { + ): TaskResult { KotlinSdkType.setUpIfNeeded() val projectImporter = ProjectImporter(project, modulesModel, path, modulesIrs) modulesBuilder.addModuleConfigurationUpdater( @@ -69,6 +69,7 @@ class IdeaJpsWizardService( ) projectImporter.import() + return UNIT_SUCCESS } } @@ -138,7 +139,7 @@ private class ProjectImporter( irsToIdeaModule.forEach { (moduleIr, ideaModule) -> addModuleDependencies(moduleIr, ideaModule, irsToIdeaModuleMap) } - } andThen safe { modulesModel.commit() } + } andThen safe { runWriteAction { modulesModel.commit() } } private fun convertModule(moduleIr: ModuleIR): TaskResult { val module = modulesModel.newModule( @@ -161,7 +162,7 @@ private class ProjectImporter( } rootModel.inheritSdk() - rootModel.commit() + runWriteAction { rootModel.commit() } addLibrariesToTheModule(moduleIr, module) return Success(module) }