tng 2003/01/29 14:37:38
Modified: c/src/xercesc/validators/datatype DatatypeValidator.hpp
Log:
lazy construct fTypeUri and fTypeLocalName.
Revision Changes Path
1.10 +7 -15
xml-xerces/c/src/xercesc/validators/datatype/DatatypeValidator.hpp
Index: DatatypeValidator.hpp
===================================================================
RCS file:
/home/cvs/xml-xerces/c/src/xercesc/validators/datatype/DatatypeValidator.hpp,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- DatatypeValidator.hpp 29 Jan 2003 19:52:32 -0000 1.9
+++ DatatypeValidator.hpp 29 Jan 2003 22:37:38 -0000 1.10
@@ -210,8 +210,8 @@
/**
* sets this type to be anonymous
**/
- void setAnonymous();
-
+ void setAnonymous();
+
//@}
// -----------------------------------------------------------------------
@@ -403,7 +403,7 @@
//
// fTypeName
// the uri,name of the type this validator will validate
- //
+ //
// fTypeLocalName
// the name of the type this validator will validate
//
@@ -424,7 +424,7 @@
XMLCh* fTypeLocalName;
XMLCh* fTypeName;
XMLCh* fTypeUri;
- bool fAnonymous;
+ bool fAnonymous;
};
@@ -597,12 +597,12 @@
delete [] fTypeName;
delete [] fTypeLocalName;
+ fTypeLocalName = 0;
delete [] fTypeUri;
+ fTypeUri = 0;
//REVISIT this is a lot of work, cant we set this earlier when we have the info?
if( XMLString::indexOf( typeName, chComma ) < 0 ) {
- fTypeLocalName = XMLString::replicate(typeName);
- fTypeUri = XMLString::replicate(SchemaSymbols::fgURI_SCHEMAFORSCHEMA);
XMLBuffer buf;
buf.set(SchemaSymbols::fgURI_SCHEMAFORSCHEMA);
buf.append(chComma);
@@ -610,14 +610,6 @@
fTypeName = XMLString::replicate(buf.getRawBuffer());
}
else {
- int index = XMLString::indexOf(typeName, chComma);
- int length = XMLString::stringLen(typeName);
- XMLCh *uri = new XMLCh[index + 1];
- XMLCh *tName = new XMLCh[length - index + 1];
- XMLString::subString(uri, typeName, 0, index);
- XMLString::subString(tName, typeName, index + 1, length);
- fTypeLocalName = tName;
- fTypeUri = uri;
fTypeName = XMLString::replicate(typeName);
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]