From bb41b95d533a535f36170e8cb90480a2939cecbd Mon Sep 17 00:00:00 2001 From: Vladimir Dolzhenko Date: Mon, 31 Jul 2023 18:07:33 +0200 Subject: [PATCH] [kotlin] Wrapped with blockingContext to avoid infinite closing project #KTIJ-26460 Fixed GitOrigin-RevId: 2d936b258c5577df3baf472c0dfaeb5e160acbe7 --- plugins/kotlin/idea/kotlin.idea.iml | 1 + .../kotlin/idea/framework/CreateKotlinSdkActivity.kt | 11 +++++++---- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/plugins/kotlin/idea/kotlin.idea.iml b/plugins/kotlin/idea/kotlin.idea.iml index 8f32cdf6a845..530cceed6a65 100644 --- a/plugins/kotlin/idea/kotlin.idea.iml +++ b/plugins/kotlin/idea/kotlin.idea.iml @@ -126,5 +126,6 @@ + \ No newline at end of file diff --git a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/framework/CreateKotlinSdkActivity.kt b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/framework/CreateKotlinSdkActivity.kt index c25f492d16a8..9a58379f4e0a 100644 --- a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/framework/CreateKotlinSdkActivity.kt +++ b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/framework/CreateKotlinSdkActivity.kt @@ -3,6 +3,7 @@ package org.jetbrains.kotlin.idea.framework import com.intellij.facet.ProjectFacetManager +import com.intellij.openapi.progress.blockingContext import com.intellij.openapi.project.Project import com.intellij.openapi.startup.ProjectActivity import org.jetbrains.kotlin.idea.base.facet.platform.platform @@ -20,10 +21,12 @@ private class CreateKotlinSdkActivity : ProjectActivity { override suspend fun execute(project: Project) { val modulesWithFacet = ProjectFacetManager.getInstance(project).getModulesWithFacet(KotlinFacetType.TYPE_ID) if (modulesWithFacet.isNotEmpty()) { - KotlinSdkType.setUpIfNeeded { - modulesWithFacet.any { - val platform = it.platform - platform.isJs() || platform.isNative() || platform.isCommon() + blockingContext { + KotlinSdkType.setUpIfNeeded { + modulesWithFacet.any { + val platform = it.platform + platform.isJs() || platform.isNative() || platform.isCommon() + } } } }