diff options
author | Roberto E. Escobar | 2012-04-18 00:03:15 +0000 |
---|---|---|
committer | Roberto E. Escobar | 2012-04-18 00:03:15 +0000 |
commit | 4a4cb26ce5319ed9bdcb9b3c1912f14ebe53036d (patch) | |
tree | 343eaa869163657c594a031f2509d5585618b1a0 | |
parent | 3bf05fffa59db88f3ebd78bdc167858069ab4ba1 (diff) | |
download | org.eclipse.osee-4a4cb26ce5319ed9bdcb9b3c1912f14ebe53036d.tar.gz org.eclipse.osee-4a4cb26ce5319ed9bdcb9b3c1912f14ebe53036d.tar.xz org.eclipse.osee-4a4cb26ce5319ed9bdcb9b3c1912f14ebe53036d.zip |
bug[ats_ZVS5C]: Null pointer exception caused by Handlers
-rw-r--r-- | plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/commandHandlers/AbstractSelectionChangedHandler.java | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/commandHandlers/AbstractSelectionChangedHandler.java b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/commandHandlers/AbstractSelectionChangedHandler.java index 27f587ff370..4716b5a9eed 100644 --- a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/commandHandlers/AbstractSelectionChangedHandler.java +++ b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/commandHandlers/AbstractSelectionChangedHandler.java @@ -16,6 +16,7 @@ import org.eclipse.jface.viewers.Viewer; import org.eclipse.osee.framework.ui.plugin.util.AWorkbench; import org.eclipse.swt.events.MenuDetectEvent; import org.eclipse.swt.events.MenuDetectListener; +import org.eclipse.ui.IWorkbench; import org.eclipse.ui.IWorkbenchPart; import org.eclipse.ui.PlatformUI; @@ -38,13 +39,16 @@ public abstract class AbstractSelectionChangedHandler extends AbstractHandler { } private void addlistener() { - if (!PlatformUI.getWorkbench().isClosing()) { - viewerMenuDetectListener = new ViewerMenuDetectListener(); - IWorkbenchPart workbenchPart = AWorkbench.getActivePage().getActivePart(); - Object object = workbenchPart.getSite().getSelectionProvider(); + if (PlatformUI.isWorkbenchRunning()) { + IWorkbench workbench = PlatformUI.getWorkbench(); + if (workbench != null && !workbench.isStarting() && !workbench.isClosing()) { + viewerMenuDetectListener = new ViewerMenuDetectListener(); + IWorkbenchPart workbenchPart = AWorkbench.getActivePage().getActivePart(); + Object object = workbenchPart.getSite().getSelectionProvider(); - if (object instanceof Viewer) { - ((Viewer) object).getControl().addMenuDetectListener(viewerMenuDetectListener); + if (object instanceof Viewer) { + ((Viewer) object).getControl().addMenuDetectListener(viewerMenuDetectListener); + } } } } |