Bug 333685: NPE thrown when selecting 'Edit Namespace Prefixes' from the 'XPath' view's view menu with no editors open
diff --git a/bundles/org.eclipse.wst.xml.xpath.ui/plugin.xml b/bundles/org.eclipse.wst.xml.xpath.ui/plugin.xml
index f8052f5..d95897e 100644
--- a/bundles/org.eclipse.wst.xml.xpath.ui/plugin.xml
+++ b/bundles/org.eclipse.wst.xml.xpath.ui/plugin.xml
@@ -103,6 +103,15 @@
 				<equals value="org.eclipse.wst.xml.views.XPathView"/>
 			</with>
 		</activeWhen>
+		<enabledWhen>
+			<with variable="activeEditorId">
+     			<or>
+             		<equals value="org.eclipse.wst.xml.ui.internal.tabletree.XMLMultiPageEditorPart"/>
+             		<equals value="org.eclipse.wst.xsl.ui.XSLEditor"/>
+             		<equals value="org.eclipse.wst.xsd.ui.internal.editor.InternalXSDMultiPageEditor"/>
+				</or>         		
+     		</with>
+		</enabledWhen>
     </handler>
 </extension>
 
diff --git a/bundles/org.eclipse.wst.xml.xpath.ui/src/org/eclipse/wst/xml/xpath/ui/internal/handler/PrefixHandler.java b/bundles/org.eclipse.wst.xml.xpath.ui/src/org/eclipse/wst/xml/xpath/ui/internal/handler/PrefixHandler.java
index 4aa9e9f..8bc1d6b 100644
--- a/bundles/org.eclipse.wst.xml.xpath.ui/src/org/eclipse/wst/xml/xpath/ui/internal/handler/PrefixHandler.java
+++ b/bundles/org.eclipse.wst.xml.xpath.ui/src/org/eclipse/wst/xml/xpath/ui/internal/handler/PrefixHandler.java
@@ -1,5 +1,5 @@
 /*******************************************************************************

- * Copyright (c) 2009 Standards for Technology in Automotive Retail and others.

+ * Copyright (c) 2009-11 Standards for Technology in Automotive Retail and others.

  * All rights reserved. This program and the accompanying materials

  * are made available under the terms of the Eclipse Public License v1.0

  * which accompanies this distribution, and is available at

@@ -7,6 +7,7 @@
  *

  * Contributors:

  *     David Carver - initial API

+ *     Jesper Steen Møller - Bug 333685 - NPE thrown when no XML editor selected

  *******************************************************************************/

 package org.eclipse.wst.xml.xpath.ui.internal.handler;

 

@@ -48,6 +49,9 @@
 		XPathUIPlugin plugin = XPathUIPlugin.getDefault();

 		

 		IEditorPart activeEditor = HandlerUtil.getActiveEditor(event);

+		

+		// suppress an NPE in the log (shouldn't happen with the enabledWhen rule)

+		if (activeEditor == null) return null;

 		IFile file = (IFile) activeEditor.getEditorInput().getAdapter(

 				IFile.class);

 		IModelManager modelManager = StructuredModelManager.getModelManager();