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]