From 6630e4e7725685efb71c36a3455a26802b82568f Mon Sep 17 00:00:00 2001 From: Alexey Kudravtsev Date: Sun, 12 Feb 2017 13:12:39 +0300 Subject: [PATCH] do dispose in EDT to fix EA-92812 - CME: GroupNode.toString --- .../com/intellij/usages/impl/SearchForUsagesRunnable.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/platform/usageView/src/com/intellij/usages/impl/SearchForUsagesRunnable.java b/platform/usageView/src/com/intellij/usages/impl/SearchForUsagesRunnable.java index c2f7fcd11401..d25b88929233 100644 --- a/platform/usageView/src/com/intellij/usages/impl/SearchForUsagesRunnable.java +++ b/platform/usageView/src/com/intellij/usages/impl/SearchForUsagesRunnable.java @@ -53,6 +53,7 @@ import com.intellij.util.ArrayUtil; import com.intellij.util.Processor; import com.intellij.util.Processors; import com.intellij.util.ui.RangeBlinker; +import com.intellij.util.ui.UIUtil; import com.intellij.xml.util.XmlStringUtil; import org.jetbrains.annotations.NonNls; import org.jetbrains.annotations.NotNull; @@ -278,7 +279,9 @@ class SearchForUsagesRunnable implements Runnable { } } else { - Disposer.dispose(usageView); + UsageViewImpl finalUsageView = usageView; + // later because dispose does some sort of swing magic e.g. AnAction.unregisterCustomShortcutSet() + UIUtil.invokeLaterIfNeeded(() -> Disposer.dispose(finalUsageView)); } return myUsageViewRef.get(); }