mirror of
https://gitlab.gnome.org/GNOME/libxml2.git
synced 2025-07-29 11:41:22 +03:00
tried to fix bug #91500 where doc->children may be overriden by a call to
* parser.c: tried to fix bug #91500 where doc->children may be overriden by a call to xmlParseBalancedChunkMemory() * catalog.c: tried to fix bug #90945 w.r.t. parsing of system identifiers in SGML catalogs containing '&' Daniel
This commit is contained in:
10
ChangeLog
10
ChangeLog
@ -1,3 +1,13 @@
|
|||||||
|
Mon Oct 21 09:57:10 CEST 2002 Daniel Veillard <daniel@veillard.com>
|
||||||
|
|
||||||
|
* parser.c: tried to fix bug #91500 where doc->children may
|
||||||
|
be overriden by a call to xmlParseBalancedChunkMemory()
|
||||||
|
|
||||||
|
Mon Oct 21 09:04:32 CEST 2002 Daniel Veillard <daniel@veillard.com>
|
||||||
|
|
||||||
|
* catalog.c: tried to fix bug #90945 w.r.t. parsing of system
|
||||||
|
identifiers in SGML catalogs containing '&'
|
||||||
|
|
||||||
Sun Oct 20 23:31:47 CEST 2002 Daniel Veillard <daniel@veillard.com>
|
Sun Oct 20 23:31:47 CEST 2002 Daniel Veillard <daniel@veillard.com>
|
||||||
|
|
||||||
* python/types.c: fixed bugs when passing result value tree
|
* python/types.c: fixed bugs when passing result value tree
|
||||||
|
@ -1954,7 +1954,7 @@ xmlParseSGMLCatalogPubid(const xmlChar *cur, xmlChar **id) {
|
|||||||
"malloc of %d byte failed\n", size);
|
"malloc of %d byte failed\n", size);
|
||||||
return(NULL);
|
return(NULL);
|
||||||
}
|
}
|
||||||
while (xmlIsPubidChar(*cur)) {
|
while (xmlIsPubidChar(*cur) || (*cur == '?')) {
|
||||||
if ((*cur == stop) && (stop != ' '))
|
if ((*cur == stop) && (stop != ' '))
|
||||||
break;
|
break;
|
||||||
if ((stop == ' ') && (IS_BLANK(*cur)))
|
if ((stop == ' ') && (IS_BLANK(*cur)))
|
||||||
|
4
parser.c
4
parser.c
@ -9784,6 +9784,7 @@ xmlParseBalancedChunkMemoryRecover(xmlDocPtr doc, xmlSAXHandlerPtr sax,
|
|||||||
xmlParserCtxtPtr ctxt;
|
xmlParserCtxtPtr ctxt;
|
||||||
xmlDocPtr newDoc;
|
xmlDocPtr newDoc;
|
||||||
xmlSAXHandlerPtr oldsax = NULL;
|
xmlSAXHandlerPtr oldsax = NULL;
|
||||||
|
xmlNodePtr content;
|
||||||
int size;
|
int size;
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
|
|
||||||
@ -9843,7 +9844,10 @@ xmlParseBalancedChunkMemoryRecover(xmlDocPtr doc, xmlSAXHandlerPtr sax,
|
|||||||
ctxt->validate = 0;
|
ctxt->validate = 0;
|
||||||
ctxt->loadsubset = 0;
|
ctxt->loadsubset = 0;
|
||||||
|
|
||||||
|
content = doc->children;
|
||||||
|
doc->children = NULL;
|
||||||
xmlParseContent(ctxt);
|
xmlParseContent(ctxt);
|
||||||
|
doc->children = content;
|
||||||
|
|
||||||
if ((RAW == '<') && (NXT(1) == '/')) {
|
if ((RAW == '<') && (NXT(1) == '/')) {
|
||||||
ctxt->errNo = XML_ERR_NOT_WELL_BALANCED;
|
ctxt->errNo = XML_ERR_NOT_WELL_BALANCED;
|
||||||
|
Reference in New Issue
Block a user