| Index: third_party/libxslt/libxslt/templates.c
|
| ===================================================================
|
| --- third_party/libxslt/libxslt/templates.c (revision 153534)
|
| +++ third_party/libxslt/libxslt/templates.c (working copy)
|
| @@ -18,6 +18,7 @@
|
| #include <libxml/globals.h>
|
| #include <libxml/xmlerror.h>
|
| #include <libxml/tree.h>
|
| +#include <libxml/dict.h>
|
| #include <libxml/xpathInternals.h>
|
| #include <libxml/parserInternals.h>
|
| #include "xslt.h"
|
| @@ -572,7 +573,8 @@
|
| }
|
| } else if ((ctxt->internalized) && (target != NULL) &&
|
| (target->doc != NULL) &&
|
| - (target->doc->dict == ctxt->dict)) {
|
| + (target->doc->dict == ctxt->dict) &&
|
| + xmlDictOwns(ctxt->dict, value)) {
|
| text->content = (xmlChar *) value;
|
| } else {
|
| text->content = xmlStrdup(value);
|
| @@ -757,7 +759,8 @@
|
| }
|
| } else if ((ctxt->internalized) &&
|
| (target->doc != NULL) &&
|
| - (target->doc->dict == ctxt->dict))
|
| + (target->doc->dict == ctxt->dict) &&
|
| + xmlDictOwns(ctxt->dict, value))
|
| {
|
| text->content = (xmlChar *) value;
|
| } else {
|
|
|