From 8d589046b4403f8d3d0f708a895658c8123d3efa Mon Sep 17 00:00:00 2001 From: Daniel Veillard Date: Tue, 4 Feb 2003 15:07:21 +0000 Subject: [PATCH] fixing bug 105049 for validity checking of content within recursive * parser.c: fixing bug 105049 for validity checking of content within recursive entities. Daniel --- ChangeLog | 5 +++++ parser.c | 8 +++++--- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 7cbf4757..d797c2e7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Tue Feb 4 16:05:53 CET 2003 Daniel Veillard + + * parser.c: fixing bug 105049 for validity checking of content + within recursive entities. + Tue Feb 4 15:40:54 CET 2003 Daniel Veillard * HTMLparser.c: try to fix # 105049 diff --git a/parser.c b/parser.c index 3392c85e..565265cd 100644 --- a/parser.c +++ b/parser.c @@ -9949,9 +9949,6 @@ xmlParseBalancedChunkMemoryInternal(xmlParserCtxtPtr oldctxt, ctxt->instate = XML_PARSER_CONTENT; ctxt->depth = oldctxt->depth + 1; - /* - * Doing validity checking on chunk doesn't make sense - */ ctxt->validate = 0; ctxt->loadsubset = oldctxt->loadsubset; @@ -9999,6 +9996,11 @@ xmlParseBalancedChunkMemoryInternal(xmlParserCtxtPtr oldctxt, cur = ctxt->myDoc->children->children; *lst = cur; while (cur != NULL) { + if (oldctxt->validate && oldctxt->wellFormed && + oldctxt->myDoc && oldctxt->myDoc->intSubset) { + oldctxt->valid &= xmlValidateElement(&oldctxt->vctxt, + oldctxt->myDoc, cur); + } cur->parent = NULL; cur = cur->next; }