From 9dc819ca4a4a257eb5ddffae6701facc1b0e5b8d Mon Sep 17 00:00:00 2001 From: Gareth Reakes <gareth@apache.org> Date: Wed, 18 Dec 2002 14:17:59 +0000 Subject: [PATCH] Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. git-svn-id: https://svn.apache.org/repos/asf/xerces/c/trunk@174540 13f79535-47bb-0310-9956-ffa450edef68 --- src/xercesc/internal/IGXMLScanner2.cpp | 2 +- src/xercesc/internal/SGXMLScanner.cpp | 2 +- src/xercesc/util/XMLString.cpp | 5 ++- src/xercesc/util/XMLString.hpp | 8 ++-- src/xercesc/util/XMLStringTokenizer.cpp | 7 +++- src/xercesc/util/XMLStringTokenizer.hpp | 4 +- src/xercesc/validators/DTD/DTDScanner.cpp | 5 ++- .../AbstractNumericFacetValidator.cpp | 7 +++- .../AbstractNumericFacetValidator.hpp | 11 ++++-- .../datatype/AbstractNumericValidator.hpp | 7 +++- .../datatype/AbstractStringValidator.cpp | 7 +++- .../datatype/AbstractStringValidator.hpp | 17 +++++---- .../AnySimpleTypeDatatypeValidator.cpp | 7 +++- .../AnySimpleTypeDatatypeValidator.hpp | 4 +- .../datatype/AnyURIDatatypeValidator.cpp | 7 +++- .../datatype/AnyURIDatatypeValidator.hpp | 7 +++- .../Base64BinaryDatatypeValidator.cpp | 7 +++- .../Base64BinaryDatatypeValidator.hpp | 7 +++- .../datatype/BooleanDatatypeValidator.cpp | 7 +++- .../datatype/BooleanDatatypeValidator.hpp | 8 ++-- .../validators/datatype/DatatypeValidator.hpp | 4 +- .../datatype/DatatypeValidatorFactory.cpp | 5 ++- .../datatype/DatatypeValidatorFactory.hpp | 4 +- .../datatype/DateDatatypeValidator.cpp | 7 +++- .../datatype/DateDatatypeValidator.hpp | 7 +++- .../datatype/DateTimeDatatypeValidator.cpp | 7 +++- .../datatype/DateTimeDatatypeValidator.hpp | 7 +++- .../datatype/DayDatatypeValidator.cpp | 7 +++- .../datatype/DayDatatypeValidator.hpp | 7 +++- .../datatype/DecimalDatatypeValidator.cpp | 7 +++- .../datatype/DecimalDatatypeValidator.hpp | 7 +++- .../datatype/DoubleDatatypeValidator.cpp | 7 +++- .../datatype/DoubleDatatypeValidator.hpp | 7 +++- .../datatype/DurationDatatypeValidator.cpp | 7 +++- .../datatype/DurationDatatypeValidator.hpp | 7 +++- .../datatype/ENTITYDatatypeValidator.cpp | 7 +++- .../datatype/ENTITYDatatypeValidator.hpp | 7 +++- .../datatype/FloatDatatypeValidator.cpp | 7 +++- .../datatype/FloatDatatypeValidator.hpp | 7 +++- .../datatype/HexBinaryDatatypeValidator.cpp | 7 +++- .../datatype/HexBinaryDatatypeValidator.hpp | 7 +++- .../datatype/IDDatatypeValidator.cpp | 7 +++- .../datatype/IDDatatypeValidator.hpp | 7 +++- .../datatype/IDREFDatatypeValidator.cpp | 7 +++- .../datatype/IDREFDatatypeValidator.hpp | 7 +++- .../datatype/ListDatatypeValidator.cpp | 37 ++++++++++--------- .../datatype/ListDatatypeValidator.hpp | 11 ++++-- .../datatype/MonthDatatypeValidator.cpp | 7 +++- .../datatype/MonthDatatypeValidator.hpp | 7 +++- .../datatype/MonthDayDatatypeValidator.cpp | 7 +++- .../datatype/MonthDayDatatypeValidator.hpp | 7 +++- .../datatype/NCNameDatatypeValidator.cpp | 7 +++- .../datatype/NCNameDatatypeValidator.hpp | 7 +++- .../datatype/NOTATIONDatatypeValidator.cpp | 7 +++- .../datatype/NOTATIONDatatypeValidator.hpp | 7 +++- .../datatype/NameDatatypeValidator.cpp | 7 +++- .../datatype/NameDatatypeValidator.hpp | 7 +++- .../datatype/QNameDatatypeValidator.cpp | 7 +++- .../datatype/QNameDatatypeValidator.hpp | 7 +++- .../datatype/StringDatatypeValidator.cpp | 7 +++- .../datatype/StringDatatypeValidator.hpp | 7 +++- .../datatype/TimeDatatypeValidator.cpp | 7 +++- .../datatype/TimeDatatypeValidator.hpp | 7 +++- .../datatype/UnionDatatypeValidator.cpp | 11 ++++-- .../datatype/UnionDatatypeValidator.hpp | 23 +++++++----- .../datatype/YearDatatypeValidator.cpp | 7 +++- .../datatype/YearDatatypeValidator.hpp | 7 +++- .../datatype/YearMonthDatatypeValidator.cpp | 7 +++- .../datatype/YearMonthDatatypeValidator.hpp | 7 +++- .../validators/schema/TraverseSchema.cpp | 10 ++--- .../schema/identity/FieldValueMap.cpp | 5 ++- .../schema/identity/FieldValueMap.hpp | 5 ++- .../validators/schema/identity/ValueStore.hpp | 1 + 73 files changed, 367 insertions(+), 179 deletions(-) diff --git a/src/xercesc/internal/IGXMLScanner2.cpp b/src/xercesc/internal/IGXMLScanner2.cpp index f4290e5c9..dbd912ea9 100644 --- a/src/xercesc/internal/IGXMLScanner2.cpp +++ b/src/xercesc/internal/IGXMLScanner2.cpp @@ -1203,7 +1203,7 @@ void IGXMLScanner::scanRawAttrListforNameSpaces(const RefVectorOf<KVStringPair>* void IGXMLScanner::parseSchemaLocation(const XMLCh* const schemaLocationStr) { - RefVectorOf<XMLCh>* schemaLocation = XMLString::tokenizeString(schemaLocationStr); + BaseRefVectorOf<XMLCh>* schemaLocation = XMLString::tokenizeString(schemaLocationStr); unsigned int size = schemaLocation->size(); if (size % 2 != 0 ) { emitError(XMLErrs::BadSchemaLocation); diff --git a/src/xercesc/internal/SGXMLScanner.cpp b/src/xercesc/internal/SGXMLScanner.cpp index 9d6e97be0..8d976b1ba 100644 --- a/src/xercesc/internal/SGXMLScanner.cpp +++ b/src/xercesc/internal/SGXMLScanner.cpp @@ -2916,7 +2916,7 @@ void SGXMLScanner::scanRawAttrListforNameSpaces(const RefVectorOf<KVStringPair>* void SGXMLScanner::parseSchemaLocation(const XMLCh* const schemaLocationStr) { - RefVectorOf<XMLCh>* schemaLocation = XMLString::tokenizeString(schemaLocationStr); + BaseRefVectorOf<XMLCh>* schemaLocation = XMLString::tokenizeString(schemaLocationStr); unsigned int size = schemaLocation->size(); if (size % 2 != 0 ) { emitError(XMLErrs::BadSchemaLocation); diff --git a/src/xercesc/util/XMLString.cpp b/src/xercesc/util/XMLString.cpp index fe01848e0..d16be63d2 100644 --- a/src/xercesc/util/XMLString.cpp +++ b/src/xercesc/util/XMLString.cpp @@ -71,6 +71,7 @@ #include <xercesc/util/NumberFormatException.hpp> #include <xercesc/util/Janitor.hpp> #include <xercesc/util/PlatformUtils.hpp> +#include <xercesc/util/RefArrayVectorOf.hpp> #include <xercesc/util/RuntimeException.hpp> #include <xercesc/util/TransService.hpp> #include <xercesc/util/TranscodingException.hpp> @@ -1466,13 +1467,13 @@ void XMLString::subString(XMLCh* const targetStr, const XMLCh* const srcStr targetStr[copySize] = 0; } -RefVectorOf<XMLCh>* XMLString::tokenizeString(const XMLCh* const tokenizeSrc) +BaseRefVectorOf<XMLCh>* XMLString::tokenizeString(const XMLCh* const tokenizeSrc) { XMLCh* orgText = replicate(tokenizeSrc); ArrayJanitor<XMLCh> janText(orgText); XMLCh* tokenizeStr = orgText; - RefVectorOf<XMLCh>* tokenStack = new RefVectorOf<XMLCh>(16, true); + RefArrayVectorOf<XMLCh>* tokenStack = new RefArrayVectorOf<XMLCh>(16, true); unsigned int len = stringLen(tokenizeStr); unsigned int skip; diff --git a/src/xercesc/util/XMLString.hpp b/src/xercesc/util/XMLString.hpp index a266099ee..57d343f4e 100644 --- a/src/xercesc/util/XMLString.hpp +++ b/src/xercesc/util/XMLString.hpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.10 2002/12/18 14:17:54 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.9 2002/12/04 02:32:43 knoaman * #include cleanup. * @@ -210,12 +213,11 @@ #if !defined(XMLSTRING_HPP) #define XMLSTRING_HPP -#include <xercesc/util/RefVectorOf.hpp> +#include <xercesc/util/BaseRefVectorOf.hpp> XERCES_CPP_NAMESPACE_BEGIN class XMLLCPTranscoder; - /** * Class for representing native character strings and handling common string * operations @@ -1259,7 +1261,7 @@ public: * @param tokenizeSrc String to be tokenized * @return a vector of all the tokenized string */ - static RefVectorOf<XMLCh>* tokenizeString(const XMLCh* const tokenizeSrc); + static BaseRefVectorOf<XMLCh>* tokenizeString(const XMLCh* const tokenizeSrc); /** Find is the string appears in the enum list * @param toFind the string to be found diff --git a/src/xercesc/util/XMLStringTokenizer.cpp b/src/xercesc/util/XMLStringTokenizer.cpp index cd4492c3b..ce029377d 100644 --- a/src/xercesc/util/XMLStringTokenizer.cpp +++ b/src/xercesc/util/XMLStringTokenizer.cpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.3 2002/12/18 14:17:54 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 15:22:05 tng * C++ Namespace Support. * @@ -97,7 +100,7 @@ XMLStringTokenizer::XMLStringTokenizer(const XMLCh* const srcStr) fDelimeters = XMLString::replicate(fgDelimeters); if (fStringLen > 0) { - fTokens = new RefVectorOf<XMLCh>(4, true); + fTokens = new RefArrayVectorOf<XMLCh>(4, true); } } catch(...) { @@ -117,7 +120,7 @@ XMLStringTokenizer::XMLStringTokenizer(const XMLCh* const srcStr, fDelimeters = XMLString::replicate(delim); if (fStringLen > 0) { - fTokens = new RefVectorOf<XMLCh>(4, true); + fTokens = new RefArrayVectorOf<XMLCh>(4, true); } } catch(...) { diff --git a/src/xercesc/util/XMLStringTokenizer.hpp b/src/xercesc/util/XMLStringTokenizer.hpp index ab764c9b3..f46134773 100644 --- a/src/xercesc/util/XMLStringTokenizer.hpp +++ b/src/xercesc/util/XMLStringTokenizer.hpp @@ -61,7 +61,7 @@ #if !defined(XMLSTRINGTOKENIZER_HPP) #define XMLSTRINGTOKENIZER_HPP -#include <xercesc/util/RefVectorOf.hpp> +#include <xercesc/util/RefArrayVectorOf.hpp> #include <xercesc/util/XMLString.hpp> XERCES_CPP_NAMESPACE_BEGIN @@ -188,7 +188,7 @@ private: int fStringLen; XMLCh* fString; XMLCh* fDelimeters; - RefVectorOf<XMLCh>* fTokens; + RefArrayVectorOf<XMLCh>* fTokens; }; diff --git a/src/xercesc/validators/DTD/DTDScanner.cpp b/src/xercesc/validators/DTD/DTDScanner.cpp index 4145069c4..e44edc01c 100644 --- a/src/xercesc/validators/DTD/DTDScanner.cpp +++ b/src/xercesc/validators/DTD/DTDScanner.cpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.18 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.17 2002/12/04 02:47:25 knoaman * scanner re-organization. * @@ -709,7 +712,7 @@ DTDScanner::scanAttDef(DTDElementDecl& parentElem, XMLBuffer& bufToUse) const XMLCh fgDefault[] = { chLatin_d, chLatin_e, chLatin_f, chLatin_a, chLatin_u, chLatin_l, chLatin_t, chNull }; bool ok = false; if (decl->getType() == XMLAttDef::Enumeration) { - RefVectorOf<XMLCh>* enumVector = XMLString::tokenizeString(decl->getEnumeration()); + BaseRefVectorOf<XMLCh>* enumVector = XMLString::tokenizeString(decl->getEnumeration()); int size = enumVector->size(); ok = (size == 1 && (XMLString::equals(enumVector->elementAt(0), fgDefault) || diff --git a/src/xercesc/validators/datatype/AbstractNumericFacetValidator.cpp b/src/xercesc/validators/datatype/AbstractNumericFacetValidator.cpp index 43d9434c8..1acccd889 100644 --- a/src/xercesc/validators/datatype/AbstractNumericFacetValidator.cpp +++ b/src/xercesc/validators/datatype/AbstractNumericFacetValidator.cpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.7 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.6 2002/11/26 22:19:15 peiyongz * Schema Errata E2-16 maxExclusive * @@ -186,7 +189,7 @@ AbstractNumericFacetValidator::AbstractNumericFacetValidator( // // P1. Enumeration // -void AbstractNumericFacetValidator::init(RefVectorOf<XMLCh>* const enums) +void AbstractNumericFacetValidator::init(RefArrayVectorOf<XMLCh>* const enums) { fStrEnumeration = enums; // save the literal value @@ -839,7 +842,7 @@ void AbstractNumericFacetValidator::inheritFacet() } -const RefVectorOf<XMLCh>* AbstractNumericFacetValidator::getEnumString() const +const RefArrayVectorOf<XMLCh>* AbstractNumericFacetValidator::getEnumString() const { return (fEnumerationInherited? getBaseValidator()->getEnumString() : fStrEnumeration ); } diff --git a/src/xercesc/validators/datatype/AbstractNumericFacetValidator.hpp b/src/xercesc/validators/datatype/AbstractNumericFacetValidator.hpp index 97bdb3a52..0b89411a1 100644 --- a/src/xercesc/validators/datatype/AbstractNumericFacetValidator.hpp +++ b/src/xercesc/validators/datatype/AbstractNumericFacetValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.5 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.4 2002/11/04 14:53:27 tng * C++ Namespace Support. * @@ -85,7 +88,7 @@ #define ABSTRACT_NUMERIC_FACET_VALIDATOR_HPP #include <xercesc/validators/datatype/DatatypeValidator.hpp> -#include <xercesc/util/RefVectorOf.hpp> +#include <xercesc/util/RefArrayVectorOf.hpp> #include <xercesc/util/XMLNumber.hpp> XERCES_CPP_NAMESPACE_BEGIN @@ -104,7 +107,7 @@ public: //@} - virtual const RefVectorOf<XMLCh>* getEnumString() const; + virtual const RefArrayVectorOf<XMLCh>* getEnumString() const; protected: @@ -113,7 +116,7 @@ protected: , const int finalSet , const ValidatorType type); - void init(RefVectorOf<XMLCh>* const enums); + void init(RefArrayVectorOf<XMLCh>* const enums); // // Abstract interface @@ -183,7 +186,7 @@ protected: XMLNumber* fMinExclusive; RefVectorOf<XMLNumber>* fEnumeration; // save the actual value - RefVectorOf<XMLCh>* fStrEnumeration; + RefArrayVectorOf<XMLCh>* fStrEnumeration; private: diff --git a/src/xercesc/validators/datatype/AbstractNumericValidator.hpp b/src/xercesc/validators/datatype/AbstractNumericValidator.hpp index b39d7d476..b62c53866 100644 --- a/src/xercesc/validators/datatype/AbstractNumericValidator.hpp +++ b/src/xercesc/validators/datatype/AbstractNumericValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:27 tng * C++ Namespace Support. * @@ -103,7 +106,7 @@ protected: , const int finalSet , const ValidatorType type); - inline void init(RefVectorOf<XMLCh>* const enums); + inline void init(RefArrayVectorOf<XMLCh>* const enums); // // Abstract interface @@ -122,7 +125,7 @@ private: }; -inline void AbstractNumericValidator::init(RefVectorOf<XMLCh>* const enums) +inline void AbstractNumericValidator::init(RefArrayVectorOf<XMLCh>* const enums) { AbstractNumericFacetValidator::init(enums); } diff --git a/src/xercesc/validators/datatype/AbstractStringValidator.cpp b/src/xercesc/validators/datatype/AbstractStringValidator.cpp index 01e5b11ba..16de3dc5b 100644 --- a/src/xercesc/validators/datatype/AbstractStringValidator.cpp +++ b/src/xercesc/validators/datatype/AbstractStringValidator.cpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.7 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.6 2002/11/04 14:53:27 tng * C++ Namespace Support. * @@ -168,7 +171,7 @@ AbstractStringValidator::AbstractStringValidator( // assigneAdditionalFacet(), inheritAdditionalFacet(). } -void AbstractStringValidator::init(RefVectorOf<XMLCh>* const enums) +void AbstractStringValidator::init(RefArrayVectorOf<XMLCh>* const enums) { if (enums) @@ -670,7 +673,7 @@ void AbstractStringValidator::checkContent( const XMLCh* const content, bool asB } -const RefVectorOf<XMLCh>* AbstractStringValidator::getEnumString() const +const RefArrayVectorOf<XMLCh>* AbstractStringValidator::getEnumString() const { return getEnumeration(); } diff --git a/src/xercesc/validators/datatype/AbstractStringValidator.hpp b/src/xercesc/validators/datatype/AbstractStringValidator.hpp index c4d2cba0e..95f6bd686 100644 --- a/src/xercesc/validators/datatype/AbstractStringValidator.hpp +++ b/src/xercesc/validators/datatype/AbstractStringValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.5 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.4 2002/11/04 14:53:27 tng * C++ Namespace Support. * @@ -129,7 +132,7 @@ public: //@} - virtual const RefVectorOf<XMLCh>* getEnumString() const; + virtual const RefArrayVectorOf<XMLCh>* getEnumString() const; // ----------------------------------------------------------------------- // Validation methods @@ -166,7 +169,7 @@ protected: , const int finalSet , const ValidatorType type); - void init(RefVectorOf<XMLCh>* const enums); + void init(RefArrayVectorOf<XMLCh>* const enums); // // Abstract interface @@ -204,7 +207,7 @@ public: inline unsigned int getMinLength() const; - inline RefVectorOf<XMLCh>* getEnumeration() const; + inline RefArrayVectorOf<XMLCh>* getEnumeration() const; protected: // ----------------------------------------------------------------------- @@ -217,7 +220,7 @@ protected: inline void setMinLength(unsigned int); - inline void setEnumeration(RefVectorOf<XMLCh>*, bool); + inline void setEnumeration(RefArrayVectorOf<XMLCh>*, bool); private: @@ -233,7 +236,7 @@ private: unsigned int fMaxLength; unsigned int fMinLength; bool fEnumerationInherited; - RefVectorOf<XMLCh>* fEnumeration; + RefArrayVectorOf<XMLCh>* fEnumeration; }; // ----------------------------------------------------------------------- @@ -255,7 +258,7 @@ inline unsigned int AbstractStringValidator::getMinLength() const return fMinLength; } -inline RefVectorOf<XMLCh>* AbstractStringValidator:: getEnumeration() const +inline RefArrayVectorOf<XMLCh>* AbstractStringValidator:: getEnumeration() const { return fEnumeration; } @@ -279,7 +282,7 @@ inline void AbstractStringValidator::setMinLength(unsigned int newMinLength) fMinLength = newMinLength; } -inline void AbstractStringValidator::setEnumeration(RefVectorOf<XMLCh>* enums +inline void AbstractStringValidator::setEnumeration(RefArrayVectorOf<XMLCh>* enums , bool inherited) { if (enums) diff --git a/src/xercesc/validators/datatype/AnySimpleTypeDatatypeValidator.cpp b/src/xercesc/validators/datatype/AnySimpleTypeDatatypeValidator.cpp index 6f1786c18..0ec11e50a 100644 --- a/src/xercesc/validators/datatype/AnySimpleTypeDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/AnySimpleTypeDatatypeValidator.cpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.4 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.3 2002/11/04 14:53:27 tng * C++ Namespace Support. * @@ -100,7 +103,7 @@ AnySimpleTypeDatatypeValidator::~AnySimpleTypeDatatypeValidator() // --------------------------------------------------------------------------- DatatypeValidator* AnySimpleTypeDatatypeValidator::newInstance(RefHashTableOf<KVStringPair>* const facets, - RefVectorOf<XMLCh>* const enums, + RefArrayVectorOf<XMLCh>* const enums, const int finalSet) { // We own them, so we will delete them first @@ -113,7 +116,7 @@ AnySimpleTypeDatatypeValidator::newInstance(RefHashTableOf<KVStringPair>* const return 0; } -const RefVectorOf<XMLCh>* AnySimpleTypeDatatypeValidator::getEnumString() const +const RefArrayVectorOf<XMLCh>* AnySimpleTypeDatatypeValidator::getEnumString() const { return 0; } diff --git a/src/xercesc/validators/datatype/AnySimpleTypeDatatypeValidator.hpp b/src/xercesc/validators/datatype/AnySimpleTypeDatatypeValidator.hpp index 9f760be19..ae1b44dfa 100644 --- a/src/xercesc/validators/datatype/AnySimpleTypeDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/AnySimpleTypeDatatypeValidator.hpp @@ -88,7 +88,7 @@ public: //@} - virtual const RefVectorOf<XMLCh>* getEnumString() const; + virtual const RefArrayVectorOf<XMLCh>* getEnumString() const; // ----------------------------------------------------------------------- // Getter methods @@ -154,7 +154,7 @@ public: * Used by the DatatypeValidatorFactory. */ DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const, - RefVectorOf<XMLCh>* const enums, + RefArrayVectorOf<XMLCh>* const enums, const int finalSet); }; diff --git a/src/xercesc/validators/datatype/AnyURIDatatypeValidator.cpp b/src/xercesc/validators/datatype/AnyURIDatatypeValidator.cpp index 5a76dff28..adf7d5675 100644 --- a/src/xercesc/validators/datatype/AnyURIDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/AnyURIDatatypeValidator.cpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:27 tng * C++ Namespace Support. * @@ -136,7 +139,7 @@ AnyURIDatatypeValidator::~AnyURIDatatypeValidator() AnyURIDatatypeValidator::AnyURIDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :AbstractStringValidator(baseValidator, facets, finalSet, DatatypeValidator::AnyURI) ,fTempURI(0) @@ -154,7 +157,7 @@ AnyURIDatatypeValidator::AnyURIDatatypeValidator( DatatypeValidator* AnyURIDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new AnyURIDatatypeValidator(this, facets, enums, finalSet); diff --git a/src/xercesc/validators/datatype/AnyURIDatatypeValidator.hpp b/src/xercesc/validators/datatype/AnyURIDatatypeValidator.hpp index 40017fef5..9e7edb787 100644 --- a/src/xercesc/validators/datatype/AnyURIDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/AnyURIDatatypeValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:27 tng * C++ Namespace Support. * @@ -115,7 +118,7 @@ public: AnyURIDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); virtual ~AnyURIDatatypeValidator(); @@ -127,7 +130,7 @@ public: * Used by the DatatypeValidatorFactory. */ virtual DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); protected: diff --git a/src/xercesc/validators/datatype/Base64BinaryDatatypeValidator.cpp b/src/xercesc/validators/datatype/Base64BinaryDatatypeValidator.cpp index 8d2519e3c..429b1a1b8 100644 --- a/src/xercesc/validators/datatype/Base64BinaryDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/Base64BinaryDatatypeValidator.cpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -124,7 +127,7 @@ Base64BinaryDatatypeValidator::~Base64BinaryDatatypeValidator() Base64BinaryDatatypeValidator::Base64BinaryDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :AbstractStringValidator(baseValidator, facets, finalSet, DatatypeValidator::Base64Binary) { @@ -133,7 +136,7 @@ Base64BinaryDatatypeValidator::Base64BinaryDatatypeValidator( DatatypeValidator* Base64BinaryDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new Base64BinaryDatatypeValidator(this, facets, enums, finalSet); diff --git a/src/xercesc/validators/datatype/Base64BinaryDatatypeValidator.hpp b/src/xercesc/validators/datatype/Base64BinaryDatatypeValidator.hpp index 0e8f27ea3..c0ead5f49 100644 --- a/src/xercesc/validators/datatype/Base64BinaryDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/Base64BinaryDatatypeValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -92,7 +95,7 @@ public: Base64BinaryDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); virtual ~Base64BinaryDatatypeValidator(); @@ -104,7 +107,7 @@ public: * Used by the DatatypeValidatorFactory. */ virtual DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); protected: diff --git a/src/xercesc/validators/datatype/BooleanDatatypeValidator.cpp b/src/xercesc/validators/datatype/BooleanDatatypeValidator.cpp index 8528c23ec..a5da5d201 100644 --- a/src/xercesc/validators/datatype/BooleanDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/BooleanDatatypeValidator.cpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.6 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.5 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -119,7 +122,7 @@ const XMLCh fgValueSpace[][32] = BooleanDatatypeValidator::BooleanDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :DatatypeValidator(baseValidator, facets, finalSet, DatatypeValidator::Boolean) { @@ -238,7 +241,7 @@ int BooleanDatatypeValidator::compare(const XMLCh* const lValue return 1; } -const RefVectorOf<XMLCh>* BooleanDatatypeValidator::getEnumString() const +const RefArrayVectorOf<XMLCh>* BooleanDatatypeValidator::getEnumString() const { return 0; } diff --git a/src/xercesc/validators/datatype/BooleanDatatypeValidator.hpp b/src/xercesc/validators/datatype/BooleanDatatypeValidator.hpp index 6ec331192..a2c5fd308 100644 --- a/src/xercesc/validators/datatype/BooleanDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/BooleanDatatypeValidator.hpp @@ -79,14 +79,14 @@ public: BooleanDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); virtual ~BooleanDatatypeValidator(); //@} - virtual const RefVectorOf<XMLCh>* getEnumString() const; + virtual const RefArrayVectorOf<XMLCh>* getEnumString() const; // ----------------------------------------------------------------------- // Getter methods @@ -137,7 +137,7 @@ public: * Used by the DatatypeValidatorFactory. */ DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); private: @@ -174,7 +174,7 @@ inline BooleanDatatypeValidator::~BooleanDatatypeValidator() inline DatatypeValidator* BooleanDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new BooleanDatatypeValidator(this, facets, enums, finalSet); diff --git a/src/xercesc/validators/datatype/DatatypeValidator.hpp b/src/xercesc/validators/datatype/DatatypeValidator.hpp index 2afbdcba7..a9985f55e 100644 --- a/src/xercesc/validators/datatype/DatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/DatatypeValidator.hpp @@ -198,7 +198,7 @@ public: * Returns the datatype enumeration if any is set. * Derived class shall provide their own copy. */ - virtual const RefVectorOf<XMLCh>* getEnumString() const = 0; + virtual const RefArrayVectorOf<XMLCh>* getEnumString() const = 0; //@} @@ -258,7 +258,7 @@ public: * Used by the DatatypeValidatorFactory. */ virtual DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const, - RefVectorOf<XMLCh>* const enums, + RefArrayVectorOf<XMLCh>* const enums, const int finalSet) = 0; protected: diff --git a/src/xercesc/validators/datatype/DatatypeValidatorFactory.cpp b/src/xercesc/validators/datatype/DatatypeValidatorFactory.cpp index a09695bfc..953c5b6e6 100644 --- a/src/xercesc/validators/datatype/DatatypeValidatorFactory.cpp +++ b/src/xercesc/validators/datatype/DatatypeValidatorFactory.cpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.9 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.8 2002/12/02 16:01:24 gareth * Fix to bug #12188. NCNAME validator now has a base validator of NAME. Patch by Peter Volchek. * @@ -680,7 +683,7 @@ DatatypeValidator* DatatypeValidatorFactory::createDatatypeValidator(const XMLCh* const typeName, DatatypeValidator* const baseValidator, RefHashTableOf<KVStringPair>* const facets, - RefVectorOf<XMLCh>* const enums, + RefArrayVectorOf<XMLCh>* const enums, const bool derivedByList, const int finalSet, const bool userDefined) diff --git a/src/xercesc/validators/datatype/DatatypeValidatorFactory.hpp b/src/xercesc/validators/datatype/DatatypeValidatorFactory.hpp index 3acd8c973..cb5714db9 100644 --- a/src/xercesc/validators/datatype/DatatypeValidatorFactory.hpp +++ b/src/xercesc/validators/datatype/DatatypeValidatorFactory.hpp @@ -94,7 +94,7 @@ XERCES_CPP_NAMESPACE_BEGIN // --------------------------------------------------------------------------- typedef RefHashTableOf<KVStringPair> KVStringPairHashTable; typedef RefHashTableOf<DatatypeValidator> DVHashTable; -typedef RefVectorOf<XMLCh> XMLChRefVector; +typedef RefArrayVectorOf<XMLCh> XMLChRefVector; class VALIDATORS_EXPORT DatatypeValidatorFactory @@ -190,7 +190,7 @@ public: DatatypeValidator* createDatatypeValidator(const XMLCh* const, DatatypeValidator* const, RefHashTableOf<KVStringPair>* const, - RefVectorOf<XMLCh>* const enums, + RefArrayVectorOf<XMLCh>* const enums, const bool, const int = 0, const bool = true); diff --git a/src/xercesc/validators/datatype/DateDatatypeValidator.cpp b/src/xercesc/validators/datatype/DateDatatypeValidator.cpp index 0f27d8c42..69ce0eea5 100644 --- a/src/xercesc/validators/datatype/DateDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/DateDatatypeValidator.cpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -91,7 +94,7 @@ DateDatatypeValidator::DateDatatypeValidator() DateDatatypeValidator::DateDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :DateTimeValidator(baseValidator, facets, finalSet, DatatypeValidator::Date) { @@ -103,7 +106,7 @@ DateDatatypeValidator::~DateDatatypeValidator() DatatypeValidator* DateDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new DateDatatypeValidator(this, facets, enums, finalSet); diff --git a/src/xercesc/validators/datatype/DateDatatypeValidator.hpp b/src/xercesc/validators/datatype/DateDatatypeValidator.hpp index e9180ee77..6522c2de7 100644 --- a/src/xercesc/validators/datatype/DateDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/DateDatatypeValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -89,7 +92,7 @@ public: DateDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); ~DateDatatypeValidator(); @@ -102,7 +105,7 @@ public: * Used by the DatatypeValidatorFactory. */ virtual DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); protected: diff --git a/src/xercesc/validators/datatype/DateTimeDatatypeValidator.cpp b/src/xercesc/validators/datatype/DateTimeDatatypeValidator.cpp index 174e977bd..0f519f8f3 100644 --- a/src/xercesc/validators/datatype/DateTimeDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/DateTimeDatatypeValidator.cpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -91,7 +94,7 @@ DateTimeDatatypeValidator::DateTimeDatatypeValidator() DateTimeDatatypeValidator::DateTimeDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :DateTimeValidator(baseValidator, facets, finalSet, DatatypeValidator::DateTime) { @@ -103,7 +106,7 @@ DateTimeDatatypeValidator::~DateTimeDatatypeValidator() DatatypeValidator* DateTimeDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new DateTimeDatatypeValidator(this, facets, enums, finalSet); diff --git a/src/xercesc/validators/datatype/DateTimeDatatypeValidator.hpp b/src/xercesc/validators/datatype/DateTimeDatatypeValidator.hpp index 913172b4c..e12473b15 100644 --- a/src/xercesc/validators/datatype/DateTimeDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/DateTimeDatatypeValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -89,7 +92,7 @@ public: DateTimeDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); ~DateTimeDatatypeValidator(); @@ -102,7 +105,7 @@ public: * Used by the DatatypeValidatorFactory. */ virtual DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); protected: diff --git a/src/xercesc/validators/datatype/DayDatatypeValidator.cpp b/src/xercesc/validators/datatype/DayDatatypeValidator.cpp index 320e08e34..f93d11ef6 100644 --- a/src/xercesc/validators/datatype/DayDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/DayDatatypeValidator.cpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -91,7 +94,7 @@ DayDatatypeValidator::DayDatatypeValidator() DayDatatypeValidator::DayDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :DateTimeValidator(baseValidator, facets, finalSet, DatatypeValidator::Day) { @@ -103,7 +106,7 @@ DayDatatypeValidator::~DayDatatypeValidator() DatatypeValidator* DayDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new DayDatatypeValidator(this, facets, enums, finalSet); diff --git a/src/xercesc/validators/datatype/DayDatatypeValidator.hpp b/src/xercesc/validators/datatype/DayDatatypeValidator.hpp index 42b7ab025..eb270f04b 100644 --- a/src/xercesc/validators/datatype/DayDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/DayDatatypeValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -89,7 +92,7 @@ public: DayDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); ~DayDatatypeValidator(); @@ -101,7 +104,7 @@ public: * Used by the DatatypeValidatorFactory. */ virtual DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); protected: diff --git a/src/xercesc/validators/datatype/DecimalDatatypeValidator.cpp b/src/xercesc/validators/datatype/DecimalDatatypeValidator.cpp index aaef6fd4d..0e89ad75f 100644 --- a/src/xercesc/validators/datatype/DecimalDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/DecimalDatatypeValidator.cpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.5 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.4 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -152,7 +155,7 @@ DecimalDatatypeValidator::DecimalDatatypeValidator() DecimalDatatypeValidator::DecimalDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :AbstractNumericValidator(baseValidator, facets, finalSet, DatatypeValidator::Decimal) , fTotalDigits(0) @@ -180,7 +183,7 @@ int DecimalDatatypeValidator::compare(const XMLCh* const lValue DatatypeValidator* DecimalDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new DecimalDatatypeValidator(this, facets, enums, finalSet); diff --git a/src/xercesc/validators/datatype/DecimalDatatypeValidator.hpp b/src/xercesc/validators/datatype/DecimalDatatypeValidator.hpp index 5c114c9d6..663ad3918 100644 --- a/src/xercesc/validators/datatype/DecimalDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/DecimalDatatypeValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.4 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.3 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -103,7 +106,7 @@ public: DecimalDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); virtual ~DecimalDatatypeValidator(); @@ -132,7 +135,7 @@ public: * Used by the DatatypeValidatorFactory. */ virtual DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); protected: diff --git a/src/xercesc/validators/datatype/DoubleDatatypeValidator.cpp b/src/xercesc/validators/datatype/DoubleDatatypeValidator.cpp index c137cd7a6..3326107ec 100644 --- a/src/xercesc/validators/datatype/DoubleDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/DoubleDatatypeValidator.cpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -104,7 +107,7 @@ DoubleDatatypeValidator::DoubleDatatypeValidator() DoubleDatatypeValidator::DoubleDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :AbstractNumericValidator(baseValidator, facets, finalSet, DatatypeValidator::Double) { @@ -130,7 +133,7 @@ int DoubleDatatypeValidator::compare(const XMLCh* const lValue DatatypeValidator* DoubleDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new DoubleDatatypeValidator(this, facets, enums, finalSet); diff --git a/src/xercesc/validators/datatype/DoubleDatatypeValidator.hpp b/src/xercesc/validators/datatype/DoubleDatatypeValidator.hpp index 55187bb06..5342594d1 100644 --- a/src/xercesc/validators/datatype/DoubleDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/DoubleDatatypeValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -105,7 +108,7 @@ public: DoubleDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); virtual ~DoubleDatatypeValidator(); @@ -134,7 +137,7 @@ public: * Used by the DatatypeValidatorFactory. */ virtual DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); protected: diff --git a/src/xercesc/validators/datatype/DurationDatatypeValidator.cpp b/src/xercesc/validators/datatype/DurationDatatypeValidator.cpp index 43b3b5d75..1288a009b 100644 --- a/src/xercesc/validators/datatype/DurationDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/DurationDatatypeValidator.cpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -91,7 +94,7 @@ DurationDatatypeValidator::DurationDatatypeValidator() DurationDatatypeValidator::DurationDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :DateTimeValidator(baseValidator, facets, finalSet, DatatypeValidator::Duration) { @@ -103,7 +106,7 @@ DurationDatatypeValidator::~DurationDatatypeValidator() DatatypeValidator* DurationDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new DurationDatatypeValidator(this, facets, enums, finalSet); diff --git a/src/xercesc/validators/datatype/DurationDatatypeValidator.hpp b/src/xercesc/validators/datatype/DurationDatatypeValidator.hpp index 39bdb3bb0..e411e9b20 100644 --- a/src/xercesc/validators/datatype/DurationDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/DurationDatatypeValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -89,7 +92,7 @@ public: DurationDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); ~DurationDatatypeValidator(); @@ -102,7 +105,7 @@ public: * Used by the DatatypeValidatorFactory. */ virtual DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); protected: diff --git a/src/xercesc/validators/datatype/ENTITYDatatypeValidator.cpp b/src/xercesc/validators/datatype/ENTITYDatatypeValidator.cpp index 7cbddd5b1..13218dc50 100644 --- a/src/xercesc/validators/datatype/ENTITYDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/ENTITYDatatypeValidator.cpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.4 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.3 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -109,7 +112,7 @@ ENTITYDatatypeValidator::ENTITYDatatypeValidator() ENTITYDatatypeValidator::ENTITYDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :StringDatatypeValidator(baseValidator, facets, finalSet, DatatypeValidator::ENTITY) ,fEntityDeclPool(0) @@ -122,7 +125,7 @@ ENTITYDatatypeValidator::~ENTITYDatatypeValidator() DatatypeValidator* ENTITYDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new ENTITYDatatypeValidator(this, facets, enums, finalSet); diff --git a/src/xercesc/validators/datatype/ENTITYDatatypeValidator.hpp b/src/xercesc/validators/datatype/ENTITYDatatypeValidator.hpp index 150f15540..636fc3ffb 100644 --- a/src/xercesc/validators/datatype/ENTITYDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/ENTITYDatatypeValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -109,7 +112,7 @@ public: ENTITYDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); virtual ~ENTITYDatatypeValidator(); @@ -156,7 +159,7 @@ public: * Used by the DatatypeValidatorFactory. */ virtual DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); // ----------------------------------------------------------------------- diff --git a/src/xercesc/validators/datatype/FloatDatatypeValidator.cpp b/src/xercesc/validators/datatype/FloatDatatypeValidator.cpp index 8c6109613..0956a7400 100644 --- a/src/xercesc/validators/datatype/FloatDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/FloatDatatypeValidator.cpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -105,7 +108,7 @@ FloatDatatypeValidator::FloatDatatypeValidator() FloatDatatypeValidator::FloatDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :AbstractNumericValidator(baseValidator, facets, finalSet, DatatypeValidator::Float) { @@ -131,7 +134,7 @@ int FloatDatatypeValidator::compare(const XMLCh* const lValue DatatypeValidator* FloatDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new FloatDatatypeValidator(this, facets, enums, finalSet); diff --git a/src/xercesc/validators/datatype/FloatDatatypeValidator.hpp b/src/xercesc/validators/datatype/FloatDatatypeValidator.hpp index 0f58aa51e..28f58f6ff 100644 --- a/src/xercesc/validators/datatype/FloatDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/FloatDatatypeValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -106,7 +109,7 @@ public: FloatDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); virtual ~FloatDatatypeValidator(); @@ -135,7 +138,7 @@ public: * Used by the DatatypeValidatorFactory. */ virtual DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); protected: diff --git a/src/xercesc/validators/datatype/HexBinaryDatatypeValidator.cpp b/src/xercesc/validators/datatype/HexBinaryDatatypeValidator.cpp index 4a84544a3..c19ac5885 100644 --- a/src/xercesc/validators/datatype/HexBinaryDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/HexBinaryDatatypeValidator.cpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -124,7 +127,7 @@ HexBinaryDatatypeValidator::~HexBinaryDatatypeValidator() HexBinaryDatatypeValidator::HexBinaryDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :AbstractStringValidator(baseValidator, facets, finalSet, DatatypeValidator::HexBinary) { @@ -133,7 +136,7 @@ HexBinaryDatatypeValidator::HexBinaryDatatypeValidator( DatatypeValidator* HexBinaryDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new HexBinaryDatatypeValidator(this, facets, enums, finalSet); diff --git a/src/xercesc/validators/datatype/HexBinaryDatatypeValidator.hpp b/src/xercesc/validators/datatype/HexBinaryDatatypeValidator.hpp index e005fbbe2..723145580 100644 --- a/src/xercesc/validators/datatype/HexBinaryDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/HexBinaryDatatypeValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -92,7 +95,7 @@ public: HexBinaryDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); virtual ~HexBinaryDatatypeValidator(); @@ -104,7 +107,7 @@ public: * Used by the DatatypeValidatorFactory. */ virtual DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); diff --git a/src/xercesc/validators/datatype/IDDatatypeValidator.cpp b/src/xercesc/validators/datatype/IDDatatypeValidator.cpp index c6dde9ead..3298cec17 100644 --- a/src/xercesc/validators/datatype/IDDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/IDDatatypeValidator.cpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -104,7 +107,7 @@ IDDatatypeValidator::IDDatatypeValidator() IDDatatypeValidator::IDDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :StringDatatypeValidator(baseValidator, facets, finalSet, DatatypeValidator::ID) ,fIDRefList(0) @@ -117,7 +120,7 @@ IDDatatypeValidator::~IDDatatypeValidator() DatatypeValidator* IDDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new IDDatatypeValidator(this, facets, enums, finalSet); diff --git a/src/xercesc/validators/datatype/IDDatatypeValidator.hpp b/src/xercesc/validators/datatype/IDDatatypeValidator.hpp index e013af469..bfe12c91e 100644 --- a/src/xercesc/validators/datatype/IDDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/IDDatatypeValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -115,7 +118,7 @@ public: IDDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); virtual ~IDDatatypeValidator(); @@ -143,7 +146,7 @@ public: * Used by the DatatypeValidatorFactory. */ virtual DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); //@} diff --git a/src/xercesc/validators/datatype/IDREFDatatypeValidator.cpp b/src/xercesc/validators/datatype/IDREFDatatypeValidator.cpp index b9b4838be..df8e7544a 100644 --- a/src/xercesc/validators/datatype/IDREFDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/IDREFDatatypeValidator.cpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -102,7 +105,7 @@ IDREFDatatypeValidator::IDREFDatatypeValidator() IDREFDatatypeValidator::IDREFDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :StringDatatypeValidator(baseValidator, facets, finalSet, DatatypeValidator::IDREF) ,fIDRefList(0) @@ -115,7 +118,7 @@ IDREFDatatypeValidator::~IDREFDatatypeValidator() DatatypeValidator* IDREFDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new IDREFDatatypeValidator(this, facets, enums, finalSet); diff --git a/src/xercesc/validators/datatype/IDREFDatatypeValidator.hpp b/src/xercesc/validators/datatype/IDREFDatatypeValidator.hpp index 18addb41f..8158cb224 100644 --- a/src/xercesc/validators/datatype/IDREFDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/IDREFDatatypeValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -112,7 +115,7 @@ public: IDREFDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); virtual ~IDREFDatatypeValidator(); @@ -142,7 +145,7 @@ public: * Used by the DatatypeValidatorFactory. */ virtual DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); inline void setIDRefList(RefHashTableOf<XMLRefInfo>* fIDRefList); diff --git a/src/xercesc/validators/datatype/ListDatatypeValidator.cpp b/src/xercesc/validators/datatype/ListDatatypeValidator.cpp index 68cc883bc..7626142ab 100644 --- a/src/xercesc/validators/datatype/ListDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/ListDatatypeValidator.cpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.7 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.6 2002/12/16 22:28:25 knoaman * Make isAtomic inline. * @@ -128,7 +131,7 @@ ListDatatypeValidator::ListDatatypeValidator() ListDatatypeValidator::ListDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :AbstractStringValidator(baseValidator, facets, finalSet, DatatypeValidator::List) ,fContent(0) @@ -151,7 +154,7 @@ ListDatatypeValidator::~ListDatatypeValidator() DatatypeValidator* ListDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new ListDatatypeValidator(this, facets, enums, finalSet); @@ -162,10 +165,10 @@ int ListDatatypeValidator::compare(const XMLCh* const lValue , const XMLCh* const rValue) { DatatypeValidator* theItemTypeDTV = getItemTypeDTV(); - RefVectorOf<XMLCh>* lVector = XMLString::tokenizeString(lValue); - Janitor<RefVectorOf<XMLCh> > janl(lVector); - RefVectorOf<XMLCh>* rVector = XMLString::tokenizeString(rValue); - Janitor<RefVectorOf<XMLCh> > janr(rVector); + BaseRefVectorOf<XMLCh>* lVector = XMLString::tokenizeString(lValue); + Janitor<BaseRefVectorOf<XMLCh> > janl(lVector); + BaseRefVectorOf<XMLCh>* rVector = XMLString::tokenizeString(rValue); + Janitor<BaseRefVectorOf<XMLCh> > janr(rVector); int lNumberOfTokens = lVector->size(); int rNumberOfTokens = rVector->size(); @@ -190,23 +193,23 @@ int ListDatatypeValidator::compare(const XMLCh* const lValue void ListDatatypeValidator::validate( const XMLCh* const content) { setContent(content); - RefVectorOf<XMLCh>* tokenVector = XMLString::tokenizeString(content); - Janitor<RefVectorOf<XMLCh> > janName(tokenVector); + BaseRefVectorOf<XMLCh>* tokenVector = XMLString::tokenizeString(content); + Janitor<BaseRefVectorOf<XMLCh> > janName(tokenVector); checkContent(tokenVector, content, false); } void ListDatatypeValidator::checkContent( const XMLCh* const content, bool asBase) { setContent(content); - RefVectorOf<XMLCh>* tokenVector = XMLString::tokenizeString(content); - Janitor<RefVectorOf<XMLCh> > janName(tokenVector); + BaseRefVectorOf<XMLCh>* tokenVector = XMLString::tokenizeString(content); + Janitor<BaseRefVectorOf<XMLCh> > janName(tokenVector); checkContent(tokenVector, content, asBase); } // // here content is a list of items // -void ListDatatypeValidator::checkContent( RefVectorOf<XMLCh>* tokenVector +void ListDatatypeValidator::checkContent( BaseRefVectorOf<XMLCh>* tokenVector , const XMLCh* const content , bool asBase) { @@ -324,12 +327,12 @@ void ListDatatypeValidator::checkContent( RefVectorOf<XMLCh>* tokenVector } -bool ListDatatypeValidator::valueSpaceCheck(RefVectorOf<XMLCh>* tokenVector +bool ListDatatypeValidator::valueSpaceCheck(BaseRefVectorOf<XMLCh>* tokenVector , const XMLCh* const enumStr) const { DatatypeValidator* theItemTypeDTV = getItemTypeDTV(); - RefVectorOf<XMLCh>* enumVector = XMLString::tokenizeString(enumStr); - Janitor<RefVectorOf<XMLCh> > janName(enumVector); + BaseRefVectorOf<XMLCh>* enumVector = XMLString::tokenizeString(enumStr); + Janitor<BaseRefVectorOf<XMLCh> > janName(enumVector); if (tokenVector->size() != enumVector->size()) return false; @@ -378,8 +381,8 @@ void ListDatatypeValidator::checkValueSpace(const XMLCh* const content) int ListDatatypeValidator::getLength(const XMLCh* const content) const { - RefVectorOf<XMLCh>* tokenVector = XMLString::tokenizeString(content); - Janitor<RefVectorOf<XMLCh> > janName(tokenVector); + BaseRefVectorOf<XMLCh>* tokenVector = XMLString::tokenizeString(content); + Janitor<BaseRefVectorOf<XMLCh> > janName(tokenVector); return tokenVector->size(); } @@ -409,7 +412,7 @@ void ListDatatypeValidator::inspectFacetBase() for ( i = 0; i < enumLength; i++) { // ask the itemType for a complete check - RefVectorOf<XMLCh>* tempList = XMLString::tokenizeString(getEnumeration()->elementAt(i)); + BaseRefVectorOf<XMLCh>* tempList = XMLString::tokenizeString(getEnumeration()->elementAt(i)); int tokenNumber = tempList->size(); try diff --git a/src/xercesc/validators/datatype/ListDatatypeValidator.hpp b/src/xercesc/validators/datatype/ListDatatypeValidator.hpp index a9de5af1d..9212ea3b5 100644 --- a/src/xercesc/validators/datatype/ListDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/ListDatatypeValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.5 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.4 2002/12/16 22:28:25 knoaman * Make isAtomic inline. * @@ -126,7 +129,7 @@ public: ListDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); virtual ~ListDatatypeValidator(); @@ -181,7 +184,7 @@ public: * Used by the DatatypeValidatorFactory. */ virtual DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); DatatypeValidator* getItemTypeDTV() const; @@ -216,11 +219,11 @@ protected: private: - void checkContent(RefVectorOf<XMLCh>* tokenVector + void checkContent(BaseRefVectorOf<XMLCh>* tokenVector , const XMLCh* const content , bool asBase); - bool valueSpaceCheck(RefVectorOf<XMLCh>* tokenVector + bool valueSpaceCheck(BaseRefVectorOf<XMLCh>* tokenVector , const XMLCh* const enumStr) const; // ----------------------------------------------------------------------- diff --git a/src/xercesc/validators/datatype/MonthDatatypeValidator.cpp b/src/xercesc/validators/datatype/MonthDatatypeValidator.cpp index d1275bcf2..6bd54a415 100644 --- a/src/xercesc/validators/datatype/MonthDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/MonthDatatypeValidator.cpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -91,7 +94,7 @@ MonthDatatypeValidator::MonthDatatypeValidator() MonthDatatypeValidator::MonthDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :DateTimeValidator(baseValidator, facets, finalSet, DatatypeValidator::Month) { @@ -103,7 +106,7 @@ MonthDatatypeValidator::~MonthDatatypeValidator() DatatypeValidator* MonthDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new MonthDatatypeValidator(this, facets, enums, finalSet); diff --git a/src/xercesc/validators/datatype/MonthDatatypeValidator.hpp b/src/xercesc/validators/datatype/MonthDatatypeValidator.hpp index 1f719b7f7..a70f25a55 100644 --- a/src/xercesc/validators/datatype/MonthDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/MonthDatatypeValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -89,7 +92,7 @@ public: MonthDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); ~MonthDatatypeValidator(); @@ -102,7 +105,7 @@ public: * Used by the DatatypeValidatorFactory. */ virtual DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); protected: diff --git a/src/xercesc/validators/datatype/MonthDayDatatypeValidator.cpp b/src/xercesc/validators/datatype/MonthDayDatatypeValidator.cpp index 21fd9c762..ba5ca7fc3 100644 --- a/src/xercesc/validators/datatype/MonthDayDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/MonthDayDatatypeValidator.cpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -91,7 +94,7 @@ MonthDayDatatypeValidator::MonthDayDatatypeValidator() MonthDayDatatypeValidator::MonthDayDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :DateTimeValidator(baseValidator, facets, finalSet, DatatypeValidator::MonthDay) { @@ -103,7 +106,7 @@ MonthDayDatatypeValidator::~MonthDayDatatypeValidator() DatatypeValidator* MonthDayDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new MonthDayDatatypeValidator(this, facets, enums, finalSet); diff --git a/src/xercesc/validators/datatype/MonthDayDatatypeValidator.hpp b/src/xercesc/validators/datatype/MonthDayDatatypeValidator.hpp index cde8fe194..3dd63fce5 100644 --- a/src/xercesc/validators/datatype/MonthDayDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/MonthDayDatatypeValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -89,7 +92,7 @@ public: MonthDayDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); ~MonthDayDatatypeValidator(); @@ -102,7 +105,7 @@ public: * Used by the DatatypeValidatorFactory. */ virtual DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); protected: diff --git a/src/xercesc/validators/datatype/NCNameDatatypeValidator.cpp b/src/xercesc/validators/datatype/NCNameDatatypeValidator.cpp index b2064e851..80ab8b26d 100644 --- a/src/xercesc/validators/datatype/NCNameDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/NCNameDatatypeValidator.cpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.4 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.3 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -98,7 +101,7 @@ NCNameDatatypeValidator::~NCNameDatatypeValidator() NCNameDatatypeValidator::NCNameDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :StringDatatypeValidator(baseValidator, facets, finalSet, DatatypeValidator::NCName) { @@ -107,7 +110,7 @@ NCNameDatatypeValidator::NCNameDatatypeValidator( DatatypeValidator* NCNameDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new NCNameDatatypeValidator(this, facets, enums, finalSet); diff --git a/src/xercesc/validators/datatype/NCNameDatatypeValidator.hpp b/src/xercesc/validators/datatype/NCNameDatatypeValidator.hpp index e43da32dc..d09902bbf 100644 --- a/src/xercesc/validators/datatype/NCNameDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/NCNameDatatypeValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -95,7 +98,7 @@ public: NCNameDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); virtual ~NCNameDatatypeValidator(); @@ -142,7 +145,7 @@ public: * Used by the DatatypeValidatorFactory. */ virtual DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); protected: diff --git a/src/xercesc/validators/datatype/NOTATIONDatatypeValidator.cpp b/src/xercesc/validators/datatype/NOTATIONDatatypeValidator.cpp index 1937960c5..16215452d 100644 --- a/src/xercesc/validators/datatype/NOTATIONDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/NOTATIONDatatypeValidator.cpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -116,7 +119,7 @@ NOTATIONDatatypeValidator::~NOTATIONDatatypeValidator() NOTATIONDatatypeValidator::NOTATIONDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :AbstractStringValidator(baseValidator, facets, finalSet, DatatypeValidator::NOTATION) { @@ -125,7 +128,7 @@ NOTATIONDatatypeValidator::NOTATIONDatatypeValidator( DatatypeValidator* NOTATIONDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new NOTATIONDatatypeValidator(this, facets, enums, finalSet); diff --git a/src/xercesc/validators/datatype/NOTATIONDatatypeValidator.hpp b/src/xercesc/validators/datatype/NOTATIONDatatypeValidator.hpp index 4233d3bc7..cfd98ab74 100644 --- a/src/xercesc/validators/datatype/NOTATIONDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/NOTATIONDatatypeValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -103,7 +106,7 @@ public: NOTATIONDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); virtual ~NOTATIONDatatypeValidator(); @@ -115,7 +118,7 @@ public: * Used by the DatatypeValidatorFactory. */ virtual DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); protected: diff --git a/src/xercesc/validators/datatype/NameDatatypeValidator.cpp b/src/xercesc/validators/datatype/NameDatatypeValidator.cpp index 4e3613f8f..18f85b97d 100644 --- a/src/xercesc/validators/datatype/NameDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/NameDatatypeValidator.cpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.4 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.3 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -101,7 +104,7 @@ NameDatatypeValidator::~NameDatatypeValidator() NameDatatypeValidator::NameDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :StringDatatypeValidator(baseValidator, facets, finalSet, DatatypeValidator::Name) { @@ -110,7 +113,7 @@ NameDatatypeValidator::NameDatatypeValidator( DatatypeValidator* NameDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new NameDatatypeValidator(this, facets, enums, finalSet); diff --git a/src/xercesc/validators/datatype/NameDatatypeValidator.hpp b/src/xercesc/validators/datatype/NameDatatypeValidator.hpp index 32a80bdce..f98fb90b2 100644 --- a/src/xercesc/validators/datatype/NameDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/NameDatatypeValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -95,7 +98,7 @@ public: NameDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); virtual ~NameDatatypeValidator(); @@ -142,7 +145,7 @@ public: * Used by the DatatypeValidatorFactory. */ virtual DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); protected: diff --git a/src/xercesc/validators/datatype/QNameDatatypeValidator.cpp b/src/xercesc/validators/datatype/QNameDatatypeValidator.cpp index e975e5ebe..604a61986 100644 --- a/src/xercesc/validators/datatype/QNameDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/QNameDatatypeValidator.cpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -112,7 +115,7 @@ QNameDatatypeValidator::~QNameDatatypeValidator() QNameDatatypeValidator::QNameDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :AbstractStringValidator(baseValidator, facets, finalSet, DatatypeValidator::QName) { @@ -121,7 +124,7 @@ QNameDatatypeValidator::QNameDatatypeValidator( DatatypeValidator* QNameDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new QNameDatatypeValidator(this, facets, enums, finalSet); diff --git a/src/xercesc/validators/datatype/QNameDatatypeValidator.hpp b/src/xercesc/validators/datatype/QNameDatatypeValidator.hpp index 7a1270139..a3999606d 100644 --- a/src/xercesc/validators/datatype/QNameDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/QNameDatatypeValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -103,7 +106,7 @@ public: QNameDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); virtual ~QNameDatatypeValidator(); @@ -115,7 +118,7 @@ public: * Used by the DatatypeValidatorFactory. */ virtual DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); protected: diff --git a/src/xercesc/validators/datatype/StringDatatypeValidator.cpp b/src/xercesc/validators/datatype/StringDatatypeValidator.cpp index 931a64a67..202fac889 100644 --- a/src/xercesc/validators/datatype/StringDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/StringDatatypeValidator.cpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.4 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.3 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -141,7 +144,7 @@ StringDatatypeValidator::StringDatatypeValidator() StringDatatypeValidator::StringDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :AbstractStringValidator(baseValidator, facets, finalSet, DatatypeValidator::String) ,fWhiteSpace(DatatypeValidator::PRESERVE) @@ -154,7 +157,7 @@ StringDatatypeValidator::~StringDatatypeValidator() DatatypeValidator* StringDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new StringDatatypeValidator(this, facets, enums, finalSet); diff --git a/src/xercesc/validators/datatype/StringDatatypeValidator.hpp b/src/xercesc/validators/datatype/StringDatatypeValidator.hpp index 037aa95b7..8f5f22e7e 100644 --- a/src/xercesc/validators/datatype/StringDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/StringDatatypeValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -101,7 +104,7 @@ public: StringDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); virtual ~StringDatatypeValidator(); @@ -123,7 +126,7 @@ public: * Used by the DatatypeValidatorFactory. */ virtual DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); protected: diff --git a/src/xercesc/validators/datatype/TimeDatatypeValidator.cpp b/src/xercesc/validators/datatype/TimeDatatypeValidator.cpp index ceb2a939b..24eb435d6 100644 --- a/src/xercesc/validators/datatype/TimeDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/TimeDatatypeValidator.cpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -91,7 +94,7 @@ TimeDatatypeValidator::TimeDatatypeValidator() TimeDatatypeValidator::TimeDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :DateTimeValidator(baseValidator, facets, finalSet, DatatypeValidator::Time) { @@ -103,7 +106,7 @@ TimeDatatypeValidator::~TimeDatatypeValidator() DatatypeValidator* TimeDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new TimeDatatypeValidator(this, facets, enums, finalSet); diff --git a/src/xercesc/validators/datatype/TimeDatatypeValidator.hpp b/src/xercesc/validators/datatype/TimeDatatypeValidator.hpp index f6824cd0d..fed032697 100644 --- a/src/xercesc/validators/datatype/TimeDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/TimeDatatypeValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -90,7 +93,7 @@ public: TimeDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); ~TimeDatatypeValidator(); @@ -103,7 +106,7 @@ public: * Used by the DatatypeValidatorFactory. */ virtual DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); protected: diff --git a/src/xercesc/validators/datatype/UnionDatatypeValidator.cpp b/src/xercesc/validators/datatype/UnionDatatypeValidator.cpp index aa21385a1..a91232853 100644 --- a/src/xercesc/validators/datatype/UnionDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/UnionDatatypeValidator.cpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.6 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.5 2002/12/06 16:45:54 tng * header include cleanup. * @@ -139,7 +142,7 @@ UnionDatatypeValidator::UnionDatatypeValidator( UnionDatatypeValidator::UnionDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :DatatypeValidator(baseValidator, facets, finalSet, DatatypeValidator::Union) ,fEnumerationInherited(false) @@ -178,7 +181,7 @@ UnionDatatypeValidator::UnionDatatypeValidator( void UnionDatatypeValidator::init(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums) + , RefArrayVectorOf<XMLCh>* const enums) { if (enums) setEnumeration(enums, false); @@ -352,7 +355,7 @@ void UnionDatatypeValidator::checkContent(const XMLCh* const content, bool asBas // any of the member types, it is considerd valid. // RefVectorOf<DatatypeValidator>* memberDTV = getMemberTypeValidators(); - RefVectorOf<XMLCh>* tmpEnum = getEnumeration(); + RefArrayVectorOf<XMLCh>* tmpEnum = getEnumeration(); unsigned int memberTypeNumber = memberDTV->size(); unsigned int enumLength = tmpEnum->size(); @@ -398,7 +401,7 @@ int UnionDatatypeValidator::compare(const XMLCh* const lValue return -1; } -const RefVectorOf<XMLCh>* UnionDatatypeValidator::getEnumString() const +const RefArrayVectorOf<XMLCh>* UnionDatatypeValidator::getEnumString() const { return getEnumeration(); } diff --git a/src/xercesc/validators/datatype/UnionDatatypeValidator.hpp b/src/xercesc/validators/datatype/UnionDatatypeValidator.hpp index 6ae2ef502..98ec94260 100644 --- a/src/xercesc/validators/datatype/UnionDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/UnionDatatypeValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.4 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.3 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -133,14 +136,14 @@ public: // UnionDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); virtual ~UnionDatatypeValidator(); //@} - virtual const RefVectorOf<XMLCh>* getEnumString() const; + virtual const RefArrayVectorOf<XMLCh>* getEnumString() const; // ----------------------------------------------------------------------- // Getter methods @@ -205,7 +208,7 @@ public: * Used by the DatatypeValidatorFactory. */ DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); RefVectorOf<DatatypeValidator>* getMemberTypeValidators() const; @@ -216,13 +219,13 @@ private: void init(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums); + , RefArrayVectorOf<XMLCh>* const enums); void cleanUp(); - RefVectorOf<XMLCh>* getEnumeration() const; + RefArrayVectorOf<XMLCh>* getEnumeration() const; - void setEnumeration(RefVectorOf<XMLCh>*, bool); + void setEnumeration(RefArrayVectorOf<XMLCh>*, bool); // ----------------------------------------------------------------------- @@ -236,13 +239,13 @@ private: // // ----------------------------------------------------------------------- bool fEnumerationInherited; - RefVectorOf<XMLCh>* fEnumeration; + RefArrayVectorOf<XMLCh>* fEnumeration; RefVectorOf<DatatypeValidator>* fMemberTypeValidators; }; inline DatatypeValidator* UnionDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new UnionDatatypeValidator(this, facets, enums, finalSet); @@ -263,12 +266,12 @@ inline void UnionDatatypeValidator::cleanUp() delete fMemberTypeValidators; } -inline RefVectorOf<XMLCh>* UnionDatatypeValidator:: getEnumeration() const +inline RefArrayVectorOf<XMLCh>* UnionDatatypeValidator:: getEnumeration() const { return fEnumeration; } -inline void UnionDatatypeValidator::setEnumeration(RefVectorOf<XMLCh>* enums +inline void UnionDatatypeValidator::setEnumeration(RefArrayVectorOf<XMLCh>* enums , bool inherited) { if (enums) diff --git a/src/xercesc/validators/datatype/YearDatatypeValidator.cpp b/src/xercesc/validators/datatype/YearDatatypeValidator.cpp index 5c903a385..92e589b9b 100644 --- a/src/xercesc/validators/datatype/YearDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/YearDatatypeValidator.cpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -91,7 +94,7 @@ YearDatatypeValidator::YearDatatypeValidator() YearDatatypeValidator::YearDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :DateTimeValidator(baseValidator, facets, finalSet, DatatypeValidator::Year) { @@ -103,7 +106,7 @@ YearDatatypeValidator::~YearDatatypeValidator() DatatypeValidator* YearDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new YearDatatypeValidator(this, facets, enums, finalSet); diff --git a/src/xercesc/validators/datatype/YearDatatypeValidator.hpp b/src/xercesc/validators/datatype/YearDatatypeValidator.hpp index cc428fa7b..5d94c0808 100644 --- a/src/xercesc/validators/datatype/YearDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/YearDatatypeValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -89,7 +92,7 @@ public: YearDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); ~YearDatatypeValidator(); @@ -102,7 +105,7 @@ public: * Used by the DatatypeValidatorFactory. */ virtual DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); protected: diff --git a/src/xercesc/validators/datatype/YearMonthDatatypeValidator.cpp b/src/xercesc/validators/datatype/YearMonthDatatypeValidator.cpp index 82889acf9..90a3fb271 100644 --- a/src/xercesc/validators/datatype/YearMonthDatatypeValidator.cpp +++ b/src/xercesc/validators/datatype/YearMonthDatatypeValidator.cpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -91,7 +94,7 @@ YearMonthDatatypeValidator::YearMonthDatatypeValidator() YearMonthDatatypeValidator::YearMonthDatatypeValidator( DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) :DateTimeValidator(baseValidator, facets, finalSet, DatatypeValidator::YearMonth) { @@ -103,7 +106,7 @@ YearMonthDatatypeValidator::~YearMonthDatatypeValidator() DatatypeValidator* YearMonthDatatypeValidator::newInstance( RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet) { return (DatatypeValidator*) new YearMonthDatatypeValidator(this, facets, enums, finalSet); diff --git a/src/xercesc/validators/datatype/YearMonthDatatypeValidator.hpp b/src/xercesc/validators/datatype/YearMonthDatatypeValidator.hpp index 9cf9608da..39e0939bb 100644 --- a/src/xercesc/validators/datatype/YearMonthDatatypeValidator.hpp +++ b/src/xercesc/validators/datatype/YearMonthDatatypeValidator.hpp @@ -57,6 +57,9 @@ /* * $Id$ * $Log$ + * Revision 1.3 2002/12/18 14:17:55 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:53:28 tng * C++ Namespace Support. * @@ -89,7 +92,7 @@ public: YearMonthDatatypeValidator(DatatypeValidator* const baseValidator , RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); ~YearMonthDatatypeValidator(); @@ -102,7 +105,7 @@ public: * Used by the DatatypeValidatorFactory. */ virtual DatatypeValidator* newInstance(RefHashTableOf<KVStringPair>* const facets - , RefVectorOf<XMLCh>* const enums + , RefArrayVectorOf<XMLCh>* const enums , const int finalSet); protected: diff --git a/src/xercesc/validators/schema/TraverseSchema.cpp b/src/xercesc/validators/schema/TraverseSchema.cpp index 23bcc02dc..31ce97cc1 100644 --- a/src/xercesc/validators/schema/TraverseSchema.cpp +++ b/src/xercesc/validators/schema/TraverseSchema.cpp @@ -1661,7 +1661,7 @@ TraverseSchema::traverseAny(const DOMElement* const elem) { } else { - RefVectorOf<XMLCh>* nameSpaceTokens = XMLString::tokenizeString(nameSpace); + BaseRefVectorOf<XMLCh>* nameSpaceTokens = XMLString::tokenizeString(nameSpace); ValueVectorOf<unsigned int> uriList(8); ContentSpecNode* firstNode = 0; ContentSpecNode* secondNode = 0; @@ -2861,7 +2861,7 @@ TraverseSchema::traverseByRestriction(const DOMElement* const rootElem, // Get facets if any existing RefHashTableOf<KVStringPair>* facets = 0; - RefVectorOf<XMLCh>* enums = 0; + RefArrayVectorOf<XMLCh>* enums = 0; XMLBuffer pattern(128); XMLCh fixedFlagStr[16]; unsigned int fixedFlag = 0; @@ -2898,7 +2898,7 @@ TraverseSchema::traverseByRestriction(const DOMElement* const rootElem, // to get the qualified name first before adding it to the // enum buffer if (!enums) { - enums = new RefVectorOf<XMLCh>(8, true); + enums = new RefArrayVectorOf<XMLCh>(8, true); } if (baseValidator->getType() == DatatypeValidator::NOTATION) { @@ -3301,7 +3301,7 @@ void TraverseSchema::traverseSimpleContentDecl(const XMLCh* const typeName, // Build up the facet info // --------------------------------------------------------------- RefHashTableOf<KVStringPair>* facets = 0; - RefVectorOf<XMLCh>* enums = 0; + RefArrayVectorOf<XMLCh>* enums = 0; XMLBuffer pattern(128); XMLCh fixedFlagStr[16]; unsigned int fixedFlag = 0; @@ -3333,7 +3333,7 @@ void TraverseSchema::traverseSimpleContentDecl(const XMLCh* const typeName, if (XMLString::equals(facetName, SchemaSymbols::fgELT_ENUMERATION)) { if (!enums) { - enums = new RefVectorOf<XMLCh>(8, true); + enums = new RefArrayVectorOf<XMLCh>(8, true); } enums->addElement(XMLString::replicate(attValue)); diff --git a/src/xercesc/validators/schema/identity/FieldValueMap.cpp b/src/xercesc/validators/schema/identity/FieldValueMap.cpp index e85a2c14b..2b99c9cf7 100644 --- a/src/xercesc/validators/schema/identity/FieldValueMap.cpp +++ b/src/xercesc/validators/schema/identity/FieldValueMap.cpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.3 2002/12/18 14:17:59 gareth + * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf. + * * Revision 1.2 2002/11/04 14:47:41 tng * C++ Namespace Support. * @@ -96,7 +99,7 @@ FieldValueMap::FieldValueMap(const FieldValueMap& other) fFields = new ValueVectorOf<IC_Field*>(*(other.fFields)); fValidators = new ValueVectorOf<DatatypeValidator*>(*(other.fValidators)); - fValues = new RefVectorOf<XMLCh>(other.fFields->curCapacity()); + fValues = new RefArrayVectorOf<XMLCh>(other.fFields->curCapacity()); for (unsigned int i=0; i<valuesSize; i++) { fValues->addElement(XMLString::replicate(other.fValues->elementAt(i))); diff --git a/src/xercesc/validators/schema/identity/FieldValueMap.hpp b/src/xercesc/validators/schema/identity/FieldValueMap.hpp index 30eddf2b4..0ee9fd1f5 100644 --- a/src/xercesc/validators/schema/identity/FieldValueMap.hpp +++ b/src/xercesc/validators/schema/identity/FieldValueMap.hpp @@ -71,6 +71,7 @@ // --------------------------------------------------------------------------- #include <xercesc/util/XMLString.hpp> #include <xercesc/util/ValueVectorOf.hpp> +#include <xercesc/util/RefArrayVectorOf.hpp> XERCES_CPP_NAMESPACE_BEGIN @@ -123,7 +124,7 @@ private: // ----------------------------------------------------------------------- ValueVectorOf<IC_Field*>* fFields; ValueVectorOf<DatatypeValidator*>* fValidators; - RefVectorOf<XMLCh>* fValues; + RefArrayVectorOf<XMLCh>* fValues; }; @@ -199,7 +200,7 @@ inline void FieldValueMap::put(IC_Field* const key, if (!fFields) { fFields = new ValueVectorOf<IC_Field*>(4); fValidators = new ValueVectorOf<DatatypeValidator*>(4); - fValues = new RefVectorOf<XMLCh>(4); + fValues = new RefArrayVectorOf<XMLCh>(4); } int keyIndex = indexOf(key); diff --git a/src/xercesc/validators/schema/identity/ValueStore.hpp b/src/xercesc/validators/schema/identity/ValueStore.hpp index 7ae03911f..4f533339c 100644 --- a/src/xercesc/validators/schema/identity/ValueStore.hpp +++ b/src/xercesc/validators/schema/identity/ValueStore.hpp @@ -71,6 +71,7 @@ // Includes // --------------------------------------------------------------------------- #include <xercesc/validators/schema/identity/FieldValueMap.hpp> +#include <xercesc/util/RefVectorOf.hpp> XERCES_CPP_NAMESPACE_BEGIN -- GitLab