diff --git a/platform/platform-api/src/com/intellij/ide/util/treeView/AbstractTreeUi.java b/platform/platform-api/src/com/intellij/ide/util/treeView/AbstractTreeUi.java index 9629b0db3afd..9a3f1341258b 100644 --- a/platform/platform-api/src/com/intellij/ide/util/treeView/AbstractTreeUi.java +++ b/platform/platform-api/src/com/intellij/ide/util/treeView/AbstractTreeUi.java @@ -1637,6 +1637,8 @@ public class AbstractTreeUi { } private ActionCallback resetToReadyNow() { + if (isReleased()) return new ActionCallback.Rejected(); + assertIsDispatchThread(); DefaultMutableTreeNode[] uc = myUpdatingChildren.toArray(new DefaultMutableTreeNode[myUpdatingChildren.size()]); @@ -2147,7 +2149,7 @@ public class AbstractTreeUi { try { progressive.run(indicator); } catch (ProcessCanceledException e) { - resetToReadyNow().doWhenDone(new Runnable() { + resetToReadyNow().doWhenProcessed(new Runnable() { public void run() { callback.setRejected(); }