EA-32857 - NPE: XmlUtil.findPrefixByQualifiedName
authorDmitry Avdeev <Dmitry.Avdeev@jetbrains.com>
Thu, 2 Feb 2012 08:29:10 +0000 (12:29 +0400)
committerDmitry Avdeev <Dmitry.Avdeev@jetbrains.com>
Thu, 2 Feb 2012 10:04:12 +0000 (14:04 +0400)
xml/impl/src/com/intellij/xml/impl/schema/XmlElementDescriptorImpl.java
xml/impl/src/com/intellij/xml/util/XmlUtil.java

index cda043cd5d9bc3410899d50088260af8ae7c7753..67792b78499361defd4ce7037f695f15e4813184 100644 (file)
@@ -103,7 +103,9 @@ public class XmlElementDescriptorImpl implements XmlElementDescriptor, PsiWritab
   }
 
   public String getNamespace(){
-    final String namespacePrefix = XmlUtil.findPrefixByQualifiedName(getName(null));
+    String name = getName();
+    if (name == null) return XmlUtil.EMPTY_URI;
+    final String namespacePrefix = XmlUtil.findPrefixByQualifiedName(name);
     final XmlNSDescriptorImpl xmlNSDescriptor = (XmlNSDescriptorImpl)getNSDescriptor();
     if(xmlNSDescriptor == null || myDescriptorTag == null) return XmlUtil.EMPTY_URI;
     return "".equals(namespacePrefix) ?
index 348137ad3027f0524df7398920bf42bdd5aaf500..97dea31b9573e95ae9ec0e7f2eea5b0b8d6f210e 100644 (file)
@@ -1506,7 +1506,7 @@ public class XmlUtil {
     return contextTag.getNamespaceByPrefix(prefix);
   }
 
-  public static String findPrefixByQualifiedName(String name) {
+  public static String findPrefixByQualifiedName(@NotNull String name) {
     final int prefixEnd = name.indexOf(':');
     if (prefixEnd > 0) {
       return name.substring(0, prefixEnd);