Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristoph Läubrich2021-01-20 07:00:43 +0000
committerChristoph Laeubrich2021-01-21 16:39:57 +0000
commit93f06a8e77b61b88be4c5444a806ead778dfba79 (patch)
tree9a07fc612b016ab2338b5904774636f52fb40cda
parent0d0065e1b4a3431ebe42788fa24d47272fe386b9 (diff)
downloadeclipse.platform.ui-93f06a8e77b61b88be4c5444a806ead778dfba79.tar.gz
eclipse.platform.ui-93f06a8e77b61b88be4c5444a806ead778dfba79.tar.xz
eclipse.platform.ui-93f06a8e77b61b88be4c5444a806ead778dfba79.zip
Bug 570496 - ProgressManagerUtil Widget is disposedI20210121-2140
add check if display itself is already disposed Change-Id: I9375ee3f6edf77e8b9b0bea5c5a761dedab615b5 Signed-off-by: Christoph Läubrich <laeubi@laeubi-soft.de>
-rw-r--r--bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressManagerUtil.java7
1 files changed, 6 insertions, 1 deletions
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressManagerUtil.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressManagerUtil.java
index 1657fdc5c3e..6e912c586ca 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressManagerUtil.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressManagerUtil.java
@@ -29,6 +29,7 @@ import org.eclipse.jface.window.IShellProvider;
import org.eclipse.swt.SWT;
import org.eclipse.swt.graphics.GC;
import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.ui.IWorkbenchPage;
import org.eclipse.ui.IWorkbenchWindow;
@@ -417,7 +418,11 @@ public class ProgressManagerUtil {
// If shell is null or disposed, then look through all shells
if (shell == null || shell.isDisposed()) {
- return getModalChildExcluding(PlatformUI.getWorkbench().getDisplay().getShells(), shell);
+ Display display = PlatformUI.getWorkbench().getDisplay();
+ if (display.isDisposed()) {
+ return null;
+ }
+ return getModalChildExcluding(display.getShells(), shell);
}
// Start with the shell to exclude and check it's shells

Back to the top