diff --git a/java/execution/impl/src/com/intellij/execution/impl/DefaultJavaProgramRunner.java b/java/execution/impl/src/com/intellij/execution/impl/DefaultJavaProgramRunner.java index a99182489cde..0b8f32964d59 100644 --- a/java/execution/impl/src/com/intellij/execution/impl/DefaultJavaProgramRunner.java +++ b/java/execution/impl/src/com/intellij/execution/impl/DefaultJavaProgramRunner.java @@ -34,7 +34,6 @@ import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.ModalityState; import com.intellij.openapi.fileEditor.FileDocumentManager; import com.intellij.openapi.project.Project; -import com.intellij.openapi.util.Disposer; import com.intellij.unscramble.AnalyzeStacktraceUtil; import com.intellij.unscramble.ThreadDumpConsoleFactory; import com.intellij.unscramble.ThreadDumpParser; @@ -100,9 +99,7 @@ public class DefaultJavaProgramRunner extends JavaPatchableProgramRunner { if (shouldAddDefaultActions) { addDefaultActions(contentBuilder); } - RunContentDescriptor contentDescriptor = contentBuilder.showRunContent(env.getContentToReuse()); - Disposer.register(env.getProject(), contentDescriptor); - return contentDescriptor; + return contentBuilder.showRunContent(env.getContentToReuse()); } @Deprecated diff --git a/platform/lang-impl/src/com/intellij/execution/runners/RunContentBuilder.java b/platform/lang-impl/src/com/intellij/execution/runners/RunContentBuilder.java index 2893f3be5973..2b0f800a5088 100644 --- a/platform/lang-impl/src/com/intellij/execution/runners/RunContentBuilder.java +++ b/platform/lang-impl/src/com/intellij/execution/runners/RunContentBuilder.java @@ -222,6 +222,7 @@ public class RunContentBuilder extends RunTab { public RunContentDescriptor showRunContent(@Nullable RunContentDescriptor reuseContent) { RunContentDescriptor descriptor = createDescriptor(); Disposer.register(descriptor, this); + Disposer.register(myProject, myRunContentDescriptor); myRunContentDescriptor = descriptor; RunContentManagerImpl.copyContentAndBehavior(descriptor, reuseContent); return descriptor; diff --git a/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/ui/XDebugSessionTab.java b/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/ui/XDebugSessionTab.java index 890f0c3e622f..8dc06a1b24ec 100644 --- a/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/ui/XDebugSessionTab.java +++ b/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/ui/XDebugSessionTab.java @@ -133,6 +133,7 @@ public class XDebugSessionTab extends DebuggerSessionTabBase { myConsole = session.getConsoleView(); myRunContentDescriptor = new RunContentDescriptor(myConsole, session.getDebugProcess().getProcessHandler(), myUi.getComponent(), session.getSessionName(), icon); Disposer.register(myRunContentDescriptor, this); + Disposer.register(myProject, myRunContentDescriptor); } @Nullable