fix to force string interning on generated documents Daniel
authorDaniel Veillard <veillard@src.gnome.org>
Tue, 26 Oct 2004 21:55:22 +0000 (21:55 +0000)
committerDaniel Veillard <veillard@src.gnome.org>
Tue, 26 Oct 2004 21:55:22 +0000 (21:55 +0000)
* libxslt/transform.c: fix to force string interning on generated
  documents
Daniel

ChangeLog
libxslt/transform.c

index 9541eb1..1f48676 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Wed Oct 27 00:00:07 CEST 2004 Daniel Veillard <daniel@veillard.com>
+
+       * libxslt/transform.c: fix to force string interning on generated
+         documents
+
 Sat Oct 23 09:36:12 PDT 2004 William Brack <wbrack@mmm.com.hk>
 
        * libexslt/crypto.c, libexslt/functions.c, libxslt/keys.c,
index 5866f8a..dd5f196 100644 (file)
@@ -817,7 +817,7 @@ xsltCopyNode(xsltTransformContextPtr ctxt, xmlNodePtr node,
     if ((node->type == XML_TEXT_NODE) ||
        (node->type == XML_CDATA_SECTION_NODE))
        return(xsltCopyText(ctxt, insert, node));
-    copy = xmlCopyNode(node, 0);
+    copy = xmlDocCopyNode(node, insert->doc, 0);
     if (copy != NULL) {
        copy->doc = ctxt->output;
        xmlAddChild(insert, copy);
@@ -998,7 +998,7 @@ xsltCopyTree(xsltTransformContextPtr ctxt, xmlNodePtr node,
            copy = NULL;
        return(copy);
     }
-    copy = xmlCopyNode(node, 0);
+    copy = xmlDocCopyNode(node, insert->doc, 0);
     if (copy != NULL) {
        copy->doc = ctxt->output;
        xmlAddChild(insert, copy);
@@ -2479,7 +2479,8 @@ xsltCopy(xsltTransformContextPtr ctxt, xmlNodePtr node,
                XSLT_TRACE(ctxt,XSLT_TRACE_COPY,xsltGenericDebug(xsltGenericDebugContext,
                                 "xsltCopy: PI %s\n", node->name));
 #endif
-               copy = xmlNewPI(node->name, node->content);
+               copy = xmlNewDocPI(ctxt->insert->doc, node->name,
+                                  node->content);
                xmlAddChild(ctxt->insert, copy);
                break;
            case XML_COMMENT_NODE:
@@ -2784,7 +2785,7 @@ xsltProcessingInstruction(xsltTransformContextPtr ctxt, xmlNodePtr node,
     }
 #endif
 
-    pi = xmlNewPI(name, value);
+    pi = xmlNewDocPI(ctxt->insert->doc, name, value);
     xmlAddChild(ctxt->insert, pi);
 
 error: