diff options
Diffstat (limited to 'lttng/org.eclipse.linuxtools.tmf.ui/src/org/eclipse/linuxtools/tmf/ui/views/uml2sd/loader/TmfUml2SDSyncLoader.java')
-rw-r--r-- | lttng/org.eclipse.linuxtools.tmf.ui/src/org/eclipse/linuxtools/tmf/ui/views/uml2sd/loader/TmfUml2SDSyncLoader.java | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/lttng/org.eclipse.linuxtools.tmf.ui/src/org/eclipse/linuxtools/tmf/ui/views/uml2sd/loader/TmfUml2SDSyncLoader.java b/lttng/org.eclipse.linuxtools.tmf.ui/src/org/eclipse/linuxtools/tmf/ui/views/uml2sd/loader/TmfUml2SDSyncLoader.java index 13503db9d2..a5c06729a7 100644 --- a/lttng/org.eclipse.linuxtools.tmf.ui/src/org/eclipse/linuxtools/tmf/ui/views/uml2sd/loader/TmfUml2SDSyncLoader.java +++ b/lttng/org.eclipse.linuxtools.tmf.ui/src/org/eclipse/linuxtools/tmf/ui/views/uml2sd/loader/TmfUml2SDSyncLoader.java @@ -59,6 +59,7 @@ import org.eclipse.linuxtools.tmf.ui.views.uml2sd.load.IUml2SDLoader; import org.eclipse.swt.widgets.Display; import org.eclipse.ui.ISelectionListener; import org.eclipse.ui.IWorkbenchPart; +import org.eclipse.ui.IWorkbenchWindow; import org.eclipse.ui.PlatformUI; import org.eclipse.ui.progress.IProgressConstants; @@ -509,7 +510,11 @@ public class TmfUml2SDSyncLoader extends TmfComponent implements IUml2SDLoader, super.dispose(); fLock.lock(); try { - PlatformUI.getWorkbench().getActiveWorkbenchWindow().getSelectionService().removePostSelectionListener(this); + IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow(); + // During Eclipse shutdown the active workbench window is null + if (window != null) { + window.getSelectionService().removePostSelectionListener(this); + } fView.setSDFindProvider(null); fView.setSDPagingProvider(null); fView.setSDFilterProvider(null); |