You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by kn...@apache.org on 2004/01/06 20:07:16 UTC
cvs commit: xml-xerces/c/src/xercesc/framework/psvi XSModel.cpp
knoaman 2004/01/06 11:07:16
Modified: c/src/xercesc/framework/psvi XSModel.cpp
Log:
Fix segfault when adding S4S
Revision Changes Path
1.18 +12 -4 xml-xerces/c/src/xercesc/framework/psvi/XSModel.cpp
Index: XSModel.cpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/framework/psvi/XSModel.cpp,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- XSModel.cpp 30 Dec 2003 21:35:46 -0000 1.17
+++ XSModel.cpp 6 Jan 2004 19:07:16 -0000 1.18
@@ -56,6 +56,9 @@
/*
* $Log$
+ * Revision 1.18 2004/01/06 19:07:16 knoaman
+ * Fix segfault when adding S4S
+ *
* Revision 1.17 2003/12/30 21:35:46 neilg
* even if there are no grammars to add to an XSModel, the S4S grammar must be included
*
@@ -233,11 +236,13 @@
(void*) SchemaSymbols::fgURI_SCHEMAFORSCHEMA
, namespaceItem
);
- fDeleteNamespace->addElement(namespaceItem);
+
+ DatatypeValidatorFactory dvFactory(manager);
+ dvFactory.expandRegistryToFullSchemaSet();
addS4SToXSModel
(
getNamespaceItem(SchemaSymbols::fgURI_SCHEMAFORSCHEMA)
- , namespaceItem->fGrammar->getDatatypeRegistry()->getBuiltInRegistry()
+ , dvFactory.getBuiltInRegistry()
);
unsigned int numberOfNamespaces = fXSNamespaceItemList->size();
@@ -388,6 +393,9 @@
// Add S4S namespace if needed
if (!fAddedS4SGrammar)
{
+ DatatypeValidatorFactory dvFactory(manager);
+ dvFactory.expandRegistryToFullSchemaSet();
+
XSNamespaceItem* namespaceItem = new (manager) XSNamespaceItem
(
this, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, manager
@@ -406,7 +414,7 @@
addS4SToXSModel
(
getNamespaceItem(SchemaSymbols::fgURI_SCHEMAFORSCHEMA)
- , namespaceItem->fGrammar->getDatatypeRegistry()->getBuiltInRegistry()
+ , dvFactory.getBuiltInRegistry()
);
}
---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-cvs-help@xml.apache.org