diff options
author | Darin Swanson | 2001-07-16 18:09:15 +0000 |
---|---|---|
committer | Darin Swanson | 2001-07-16 18:09:15 +0000 |
commit | e01ea82dfb4e1b05c4305b1a4eddeabe91c7766f (patch) | |
tree | ee637f9a1ad16447b4e18d886d2e437fbae7a391 | |
parent | d83b8ed9434c44b796b46bbc2d664b14da66d15f (diff) | |
download | eclipse.platform.debug-e01ea82dfb4e1b05c4305b1a4eddeabe91c7766f.tar.gz eclipse.platform.debug-e01ea82dfb4e1b05c4305b1a4eddeabe91c7766f.tar.xz eclipse.platform.debug-e01ea82dfb4e1b05c4305b1a4eddeabe91c7766f.zip |
1GGRAJD
8 files changed, 23 insertions, 11 deletions
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/AbstractDebugView.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/AbstractDebugView.java index 0049fae4b..445a16682 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/AbstractDebugView.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/AbstractDebugView.java @@ -82,6 +82,9 @@ public abstract class AbstractDebugView extends ViewPart implements IDebugViewAd // is created
Runnable r = new Runnable() {
public void run() {
+ if (fViewer.getControl().isDisposed()) {
+ return;
+ }
IContributionItem[] items = tbm.getItems();
if (items != null) {
for (int i = 0; i < items.length; i++) {
@@ -95,10 +98,10 @@ public abstract class AbstractDebugView extends ViewPart implements IDebugViewAd }
}
};
- IWorkbenchWindow w = DebugUIPlugin.getActiveWorkbenchWindow();
- if (w != null) {
- w.getShell().getDisplay().asyncExec(r);
+ if (fViewer.getControl().isDisposed()) {
+ return;
}
+ fViewer.getControl().getDisplay().asyncExec(r);
}
/**
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/BasicContentProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/BasicContentProvider.java index 0286f1413..8d9319f28 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/BasicContentProvider.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/BasicContentProvider.java @@ -40,7 +40,7 @@ public abstract class BasicContentProvider implements IStructuredContentProvider protected void asyncExec(Runnable r) {
if (fViewer != null) {
Control ctrl= fViewer.getControl();
- if (ctrl != null) {
+ if (ctrl != null && !ctrl.isDisposed()) {
ctrl.getDisplay().asyncExec(r);
}
}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ConsoleDocument.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ConsoleDocument.java index 08d60a7c4..4438dd46c 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ConsoleDocument.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ConsoleDocument.java @@ -388,11 +388,11 @@ public class ConsoleDocument extends AbstractDocument implements IDebugEventList * UI will be updated.
*/
protected void update(Runnable runnable) {
- if (fConsoleViewer != null) {
+ if (fConsoleViewer != null && !fConsoleViewer.getControl().isDisposed()) {
fConsoleViewer.getControl().getDisplay().asyncExec(runnable);
} else {
Display display= DebugUIPlugin.getDefault().getDisplay();
- if (display != null) {
+ if (display != null && !display.isDisposed()) {
display.asyncExec(runnable);
}
}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ConsoleView.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ConsoleView.java index 48b3bd3b4..bf2369804 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ConsoleView.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ConsoleView.java @@ -71,14 +71,14 @@ public class ConsoleView extends ViewPart implements IDocumentListener { * if so specified.
*/
protected void setViewerInput(final IAdaptable element, final boolean determineCurrentProcess) {
- if (fConsoleViewer == null) {
+ if (fConsoleViewer == null || fConsoleViewer.getControl().isDisposed()) {
return;
}
Display display= fConsoleViewer.getControl().getDisplay();
if (display != null) {
display.asyncExec(new Runnable() {
public void run() {
- if (fConsoleViewer == null) {
+ if (fConsoleViewer == null || fConsoleViewer.getControl().isDisposed()) {
return;
}
IDocument doc= DebugUIPlugin.getDefault().getConsoleDocument((IProcess) element, determineCurrentProcess);
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIPlugin.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIPlugin.java index 444bb5a2b..a346321fd 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIPlugin.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIPlugin.java @@ -433,7 +433,7 @@ public class DebugUIPlugin extends AbstractUIPlugin implements ISelectionChanged return getDefault().getWorkbench().getActiveWorkbenchWindow();
}
- /**
+/**
* Creates an extension. If the extension plugin has not
* been loaded a busy cursor will be activated during the duration of
* the load.
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/EnableDisableBreakpointAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/EnableDisableBreakpointAction.java index e67741207..ac5155b56 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/EnableDisableBreakpointAction.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/EnableDisableBreakpointAction.java @@ -104,7 +104,11 @@ public class EnableDisableBreakpointAction extends SelectionProviderAction imple * @see IBreakpointListener
*/
public void breakpointChanged(IMarker breakpoint, IMarkerDelta delta) {
- Display.getDefault().asyncExec(new Runnable() {
+ final Display display= Display.getDefault();
+ if (display.isDisposed()) {
+ return;
+ }
+ display.asyncExec(new Runnable() {
public void run() {
ISelection s= getSelectionProvider().getSelection();
if (s instanceof IStructuredSelection) {
@@ -113,6 +117,5 @@ public class EnableDisableBreakpointAction extends SelectionProviderAction imple }
});
}
-
}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ShowQualifiedAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ShowQualifiedAction.java index 2308af84b..e1ab39ab7 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ShowQualifiedAction.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ShowQualifiedAction.java @@ -36,6 +36,9 @@ public class ShowQualifiedAction extends Action { }
private void valueChanged(boolean on) {
+ if (fViewer.getControl().isDisposed()) {
+ return;
+ }
ILabelProvider labelProvider= (ILabelProvider)fViewer.getLabelProvider();
if (labelProvider instanceof IDebugModelPresentation) {
IDebugModelPresentation debugLabelProvider= (IDebugModelPresentation)labelProvider;
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ShowTypesAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ShowTypesAction.java index 057bb2c0f..0cfec366f 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ShowTypesAction.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ShowTypesAction.java @@ -38,6 +38,9 @@ public class ShowTypesAction extends Action { }
private void valueChanged(boolean on) {
+ if (fViewer.getControl().isDisposed()) {
+ return;
+ }
ILabelProvider labelProvider= (ILabelProvider)fViewer.getLabelProvider();
if (labelProvider instanceof IDebugModelPresentation) {
IDebugModelPresentation debugLabelProvider= (IDebugModelPresentation)labelProvider;
|