fix perl
[platform/upstream/libxml2.git] / SAX2.c
diff --git a/SAX2.c b/SAX2.c
index 126a79f..c5676b3 100644 (file)
--- a/SAX2.c
+++ b/SAX2.c
@@ -2162,7 +2162,6 @@ xmlSAX2StartElementNs(void *ctx,
     xmlNodePtr parent;
     xmlNsPtr last = NULL, ns;
     const xmlChar *uri, *pref;
-    xmlChar *lname = NULL;
     int i, j;
 
     if (ctx == NULL) return;
@@ -2182,20 +2181,6 @@ xmlSAX2StartElementNs(void *ctx,
     }
 
     /*
-     * Take care of the rare case of an undefined namespace prefix
-     */
-    if ((prefix != NULL) && (URI == NULL)) {
-        if (ctxt->dictNames) {
-           const xmlChar *fullname;
-
-           fullname = xmlDictQLookup(ctxt->dict, prefix, localname);
-           if (fullname != NULL)
-               localname = fullname;
-       } else {
-           lname = xmlBuildQName(localname, prefix, NULL, 0);
-       }
-    }
-    /*
      * allocate the node
      */
     if (ctxt->freeElems != NULL) {
@@ -2208,10 +2193,7 @@ xmlSAX2StartElementNs(void *ctx,
        if (ctxt->dictNames)
            ret->name = localname;
        else {
-           if (lname == NULL)
-               ret->name = xmlStrdup(localname);
-           else
-               ret->name = lname;
+           ret->name = xmlStrdup(localname);
            if (ret->name == NULL) {
                xmlSAX2ErrMemory(ctxt, "xmlSAX2StartElementNs");
                return;
@@ -2223,11 +2205,8 @@ xmlSAX2StartElementNs(void *ctx,
        if (ctxt->dictNames)
            ret = xmlNewDocNodeEatName(ctxt->myDoc, NULL, 
                                       (xmlChar *) localname, NULL);
-       else if (lname == NULL)
-           ret = xmlNewDocNode(ctxt->myDoc, NULL, localname, NULL);
        else
-           ret = xmlNewDocNodeEatName(ctxt->myDoc, NULL, 
-                                      (xmlChar *) lname, NULL);
+           ret = xmlNewDocNode(ctxt->myDoc, NULL, localname, NULL);
        if (ret == NULL) {
            xmlSAX2ErrMemory(ctxt, "xmlSAX2StartElementNs");
            return;
@@ -2334,33 +2313,8 @@ xmlSAX2StartElementNs(void *ctx,
      */
     if (nb_attributes > 0) {
         for (j = 0,i = 0;i < nb_attributes;i++,j+=5) {
-           /*
-            * Handle the rare case of an undefined atribute prefix
-            */
-           if ((attributes[j+1] != NULL) && (attributes[j+2] == NULL)) {
-               if (ctxt->dictNames) {
-                   const xmlChar *fullname;
-
-                   fullname = xmlDictQLookup(ctxt->dict, attributes[j+1],
-                                             attributes[j]);
-                   if (fullname != NULL) {
-                       xmlSAX2AttributeNs(ctxt, fullname, NULL,
-                                          attributes[j+3], attributes[j+4]);
-                       continue;
-                   }
-               } else {
-                   lname = xmlBuildQName(attributes[j], attributes[j+1],
-                                         NULL, 0);
-                   if (lname != NULL) {
-                       xmlSAX2AttributeNs(ctxt, lname, NULL,
-                                          attributes[j+3], attributes[j+4]);
-                       xmlFree(lname);
-                       continue;
-                   }
-               }
-           }
            xmlSAX2AttributeNs(ctxt, attributes[j], attributes[j+1],
-                              attributes[j+3], attributes[j+4]);
+                              attributes[j+3], attributes[j+4]);
        }
     }