1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2025-07-29 11:41:22 +03:00

Fixed a really nasty problem raised by a DocBook XSLT transform provided

* entities.c parser.c tree.c include/libxml/entities.h: Fixed
  a really nasty problem raised by a DocBook XSLT transform
  provided by Sebastian Bergmann
Daniel
This commit is contained in:
Daniel Veillard
2002-12-30 00:01:08 +00:00
parent 29b3e285a7
commit 2d84a89478
5 changed files with 29 additions and 2 deletions

View File

@ -5474,6 +5474,7 @@ xmlParseReference(xmlParserCtxtPtr ctxt) {
(ent->children == NULL)) {
ent->children = list;
ent->last = list;
ent->owner = 1;
list->parent = (xmlNodePtr) ent;
} else {
xmlFreeNodeList(list);
@ -5539,7 +5540,9 @@ xmlParseReference(xmlParserCtxtPtr ctxt) {
(list->next == NULL)) {
list->parent = (xmlNodePtr) ent;
list = NULL;
ent->owner = 1;
} else {
ent->owner = 0;
while (list != NULL) {
list->parent = (xmlNodePtr) ctxt->node;
list->doc = ctxt->myDoc;
@ -5552,6 +5555,7 @@ xmlParseReference(xmlParserCtxtPtr ctxt) {
xmlAddEntityReference(ent, list, NULL);
}
} else {
ent->owner = 1;
while (list != NULL) {
list->parent = (xmlNodePtr) ent;
if (list->next == NULL)