diff --git a/ChangeLog b/ChangeLog index 42b3b082..9c304814 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Fri Apr 20 17:45:47 CEST 2001 Daniel Veillard + + * valid.c: forgot an epsilon transition in for ()+ + * test/VCM/v21.xml : added a specific test case + Fri Apr 20 15:46:04 CEST 2001 Daniel Veillard * valid.c: removed a state explosion exhibited by RSS diff --git a/test/VCM/v21.xml b/test/VCM/v21.xml new file mode 100644 index 00000000..4c8d923f --- /dev/null +++ b/test/VCM/v21.xml @@ -0,0 +1,7 @@ + + + + +]> + diff --git a/valid.c b/valid.c index b8077b47..4e9bcfba 100644 --- a/valid.c +++ b/valid.c @@ -3590,7 +3590,8 @@ cont: if ((consumed) && (CONT != NULL) && (CONT->parent != NULL) && ((CONT->ocur == XML_ELEMENT_CONTENT_MULT) || - (CONT->ocur == XML_ELEMENT_CONTENT_OPT))) { + (CONT->ocur == XML_ELEMENT_CONTENT_OPT) || + ((CONT->ocur == XML_ELEMENT_CONTENT_PLUS) && (OCCURENCE)))) { DEBUG_VALID_MSG("saving parent branch"); vstateVPush(ctxt, CONT, NODE, DEPTH, OCCURS, ROLLBACK_PARENT); }