1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2024-10-26 20:25:14 +03:00

fixed problem with IS_COMPILABLE flag (bug 130216)

* relaxng.c: fixed problem with IS_COMPILABLE flag
  (bug 130216)
This commit is contained in:
William M. Brack 2004-03-27 17:54:18 +00:00
parent f8e6668041
commit 6092962595
2 changed files with 15 additions and 3 deletions

View File

@ -1,3 +1,8 @@
Sat Mar 27 09:56:14 PST 2004 William Brack <wbrack@mmm.com.hk>
* relaxng.c: fixed problem with IS_COMPILABLE flag
(bug 130216)
Fri Mar 26 18:28:32 CET 2004 Daniel Veillard <daniel@veillard.com>
* parser.c: applied patch from Dave Beckett to correct line number

View File

@ -2340,7 +2340,8 @@ xmlRelaxNGAddValidError(xmlRelaxNGValidCtxtPtr ctxt,
/*
* generate the error directly
*/
if (((ctxt->flags & 1) == 0) || (ctxt->flags & 2)) {
if (((ctxt->flags & FLAGS_IGNORABLE) == 0) ||
(ctxt->flags & FLAGS_NEGATIVE)) {
xmlNodePtr node, seq;
/*
@ -2880,9 +2881,15 @@ xmlRelaxNGIsCompileable(xmlRelaxNGDefinePtr def)
break;
list = list->next;
}
if (ret == 0)
/*
* Because the routine is recursive, we must guard against
* discovering both COMPILABLE and NOT_COMPILABLE
*/
if (ret == 0) {
def->dflags &= ~IS_COMPILABLE;
def->dflags |= IS_NOT_COMPILABLE;
if (ret == 1)
}
if ((ret == 1) && !(def->dflags &= IS_NOT_COMPILABLE))
def->dflags |= IS_COMPILABLE;
#ifdef DEBUG_COMPILE
if (ret == 1) {