From 802fc6266f977bd1a2fb556befb43495fc9be46c Mon Sep 17 00:00:00 2001 From: Aleksey Pivovarov Date: Fri, 27 Nov 2015 19:58:33 +0300 Subject: [PATCH] merge: fix freeze on merge window close with ESC (or cross) MergeTool spends a lot of time listening to external changes. We should destroy MergeViewer before restoring initial state to avoid it (viewer can't do it itself, as on explicit 'cancel' action). --- .../src/com/intellij/diff/merge/MergeRequestProcessor.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/platform/diff-impl/src/com/intellij/diff/merge/MergeRequestProcessor.java b/platform/diff-impl/src/com/intellij/diff/merge/MergeRequestProcessor.java index 325bbf6b1e88..f7ec57dc31ec 100644 --- a/platform/diff-impl/src/com/intellij/diff/merge/MergeRequestProcessor.java +++ b/platform/diff-impl/src/com/intellij/diff/merge/MergeRequestProcessor.java @@ -215,6 +215,7 @@ public abstract class MergeRequestProcessor implements Disposable { onDispose(); destroyViewer(); + applyRequestResult(MergeResult.CANCEL); } }); } @@ -269,7 +270,6 @@ public abstract class MergeRequestProcessor implements Disposable { @CalledInAwt protected void onDispose() { - applyRequestResult(MergeResult.CANCEL); } protected void setWindowTitle(@NotNull String title) {