Bug 340026 - @canExecute in Handlers does not effect tool items in a toolbar
Handle some NPEs that didn't hurt anything, but filled up the logs
diff --git a/bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/HandledContributionItem.java b/bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/HandledContributionItem.java
index d94e03c..182a05d 100644
--- a/bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/HandledContributionItem.java
+++ b/bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/HandledContributionItem.java
@@ -218,6 +218,15 @@
 				}
 				SafeRunner.run(new ISafeRunnable() {
 					public void run() throws Exception {
+						final IEclipseContext lclContext = getContext(model);
+						if (lclContext == null) {
+							return;
+						}
+						EHandlerService service = lclContext
+								.get(EHandlerService.class);
+						if (service == null) {
+							return;
+						}
 						model.setEnabled(canExecuteItem());
 						update();
 					}
@@ -565,7 +574,7 @@
 		}
 		final IEclipseContext lclContext = getContext(model);
 		EHandlerService service = lclContext.get(EHandlerService.class);
-		return service.canExecute(cmd);
+		return service == null ? false : service.canExecute(cmd);
 	}
 
 	public void setParent(IContributionManager parent) {