From d95f1d515d6eee77c636e58d36640c07fb85ac0e Mon Sep 17 00:00:00 2001 From: Aleksey Pivovarov Date: Thu, 24 Nov 2016 12:07:24 +0300 Subject: [PATCH] merge: execute finally block on `registerUndoRedo` failure EA-92269 - assert: MergeModelBase.dispose --- .../src/com/intellij/diff/merge/MergeModelBase.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/platform/diff-impl/src/com/intellij/diff/merge/MergeModelBase.java b/platform/diff-impl/src/com/intellij/diff/merge/MergeModelBase.java index fbcfd091a987..b43d524372d3 100644 --- a/platform/diff-impl/src/com/intellij/diff/merge/MergeModelBase.java +++ b/platform/diff-impl/src/com/intellij/diff/merge/MergeModelBase.java @@ -234,12 +234,16 @@ public abstract class MergeModelBase implements myInsideCommand = true; enterBulkChangeUpdateBlock(); - registerUndoRedo(true, allAffectedChanges); try { - task.run(); + registerUndoRedo(true, allAffectedChanges); + try { + task.run(); + } + finally { + registerUndoRedo(false, allAffectedChanges); + } } finally { - registerUndoRedo(false, allAffectedChanges); exitBulkChangeUpdateBlock(); myInsideCommand = false; }