diff --git a/idea/jvm-debugger/jvm-debugger-coroutine/src/org/jetbrains/kotlin/idea/debugger/coroutine/DebuggerConnection.kt b/idea/jvm-debugger/jvm-debugger-coroutine/src/org/jetbrains/kotlin/idea/debugger/coroutine/DebuggerConnection.kt index cd609b51f74..2dfdc051132 100644 --- a/idea/jvm-debugger/jvm-debugger-coroutine/src/org/jetbrains/kotlin/idea/debugger/coroutine/DebuggerConnection.kt +++ b/idea/jvm-debugger/jvm-debugger-coroutine/src/org/jetbrains/kotlin/idea/debugger/coroutine/DebuggerConnection.kt @@ -13,10 +13,10 @@ import com.intellij.execution.configurations.RunConfigurationBase import com.intellij.execution.ui.RunnerLayoutUi import com.intellij.execution.ui.layout.PlaceInGrid import com.intellij.openapi.Disposable +import com.intellij.openapi.application.ApplicationManager import com.intellij.openapi.project.Project import com.intellij.openapi.util.Disposer import com.intellij.ui.content.Content -import com.intellij.util.IncorrectOperationException import com.intellij.util.messages.MessageBusConnection import com.intellij.xdebugger.XDebugProcess import com.intellij.xdebugger.XDebugSession @@ -89,7 +89,9 @@ class DebuggerConnection( } override fun processStopped(debugProcess: XDebugProcess) { - Disposer.dispose(this) + ApplicationManager.getApplication().invokeLater { + Disposer.dispose(this) + } } private fun registerXCoroutinesPanel(session: XDebugSession): Disposable? {