1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2025-10-21 14:53:44 +03:00

xmlTextConcat works with comments and PI nodes (bug #355962). fix

* tree.c: xmlTextConcat works with comments and PI nodes (bug #355962).
* parser.c: fix resulting tree corruption when using XML namespace
  with existing doc in xmlParseBalancedChunkMemoryRecover.
This commit is contained in:
Rob Richards
2006-09-16 14:04:26 +00:00
parent 8ca85b251a
commit a02f199d7b
3 changed files with 13 additions and 1 deletions

View File

@@ -1,3 +1,9 @@
Sat Sep 16 16:02:23 CEST 2006 Rob Richards <rrichards@ctindustries.net>
* tree.c: xmlTextConcat works with comments and PI nodes (bug #355962).
* parser.c: fix resulting tree corruption when using XML namespace
with existing doc in xmlParseBalancedChunkMemoryRecover.
Fri Sep 1 11:52:55 CEST 2006 Daniel Veillard <daniel@veillard.com>
* xmlIO.c: another patch from Emelyanov Alexey to clean up a few things

View File

@@ -11903,6 +11903,9 @@ xmlParseBalancedChunkMemoryRecover(xmlDocPtr doc, xmlSAXHandlerPtr sax,
} else {
ctxt->myDoc = newDoc;
newDoc->children->doc = doc;
/* Ensure that doc has XML spec namespace */
xmlSearchNsByHref(doc, (xmlNodePtr)doc, XML_XML_NAMESPACE);
newDoc->oldNs = doc->oldNs;
}
ctxt->instate = XML_PARSER_CONTENT;
ctxt->depth = depth;
@@ -11963,6 +11966,7 @@ xmlParseBalancedChunkMemoryRecover(xmlDocPtr doc, xmlSAXHandlerPtr sax,
xmlFreeParserCtxt(ctxt);
newDoc->intSubset = NULL;
newDoc->extSubset = NULL;
newDoc->oldNs = NULL;
xmlFreeDoc(newDoc);
return(ret);

4
tree.c
View File

@@ -6529,7 +6529,9 @@ xmlTextConcat(xmlNodePtr node, const xmlChar *content, int len) {
if (node == NULL) return(-1);
if ((node->type != XML_TEXT_NODE) &&
(node->type != XML_CDATA_SECTION_NODE)) {
(node->type != XML_CDATA_SECTION_NODE) &&
(node->type != XML_COMMENT_NODE) &&
(node->type != XML_PI_NODE)) {
#ifdef DEBUG_TREE
xmlGenericError(xmlGenericErrorContext,
"xmlTextConcat: node is not text nor CDATA\n");