tng 2003/01/09 14:33:32 Modified: c/src/xercesc/internal IGXMLScanner.cpp SGXMLScanner.cpp Log: [Bug 14955] error validating parser. Revision Changes Path 1.4 +7 -1 xml-xerces/c/src/xercesc/internal/IGXMLScanner.cpp Index: IGXMLScanner.cpp =================================================================== RCS file: /home/cvs/xml-xerces/c/src/xercesc/internal/IGXMLScanner.cpp,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- IGXMLScanner.cpp 7 Jan 2003 15:43:47 -0000 1.3 +++ IGXMLScanner.cpp 9 Jan 2003 22:33:32 -0000 1.4 @@ -1012,6 +1012,9 @@ // reset xsi:type ComplexTypeInfo if (fGrammarType == Grammar::SchemaGrammarType) { ((SchemaElementDecl*)topElem->fThisElement)->setXsiComplexTypeInfo(0); + if (!isRoot) + ((SchemaElementDecl*)(fElemStack.topElement()->fThisElement))->setXsiComplexTypeInfo( + ((SchemaValidator*)fValidator)->getCurrentTypeInfo()); // call matchers and de-activate context int oldCount = fMatcherStack->getMatcherCount(); @@ -2422,6 +2425,9 @@ // reset xsi:type ComplexTypeInfo ((SchemaElementDecl*)elemDecl)->setXsiComplexTypeInfo(0); + if (!isRoot) + ((SchemaElementDecl*)(fElemStack.topElement()->fThisElement))->setXsiComplexTypeInfo( + ((SchemaValidator*)fValidator)->getCurrentTypeInfo()); // call matchers and de-activate context int oldCount = fMatcherStack->getMatcherCount(); 1.9 +7 -1 xml-xerces/c/src/xercesc/internal/SGXMLScanner.cpp Index: SGXMLScanner.cpp =================================================================== RCS file: /home/cvs/xml-xerces/c/src/xercesc/internal/SGXMLScanner.cpp,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- SGXMLScanner.cpp 7 Jan 2003 15:43:47 -0000 1.8 +++ SGXMLScanner.cpp 9 Jan 2003 22:33:32 -0000 1.9 @@ -958,6 +958,9 @@ // reset xsi:type ComplexTypeInfo ((SchemaElementDecl*)topElem->fThisElement)->setXsiComplexTypeInfo(0); + if (!isRoot) + ((SchemaElementDecl*)(fElemStack.topElement()->fThisElement))->setXsiComplexTypeInfo( + ((SchemaValidator*)fValidator)->getCurrentTypeInfo()); // call matchers and de-activate context int oldCount = fMatcherStack->getMatcherCount(); @@ -1532,6 +1535,9 @@ // reset xsi:type ComplexTypeInfo ((SchemaElementDecl*)elemDecl)->setXsiComplexTypeInfo(0); + if (!isRoot) + ((SchemaElementDecl*)(fElemStack.topElement()->fThisElement))->setXsiComplexTypeInfo( + ((SchemaValidator*)fValidator)->getCurrentTypeInfo()); // call matchers and de-activate context int oldCount = fMatcherStack->getMatcherCount();
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]