diff --git a/src/xercesc/util/MsgLoaders/ICU/ICUMsgLoader.cpp b/src/xercesc/util/MsgLoaders/ICU/ICUMsgLoader.cpp index ec1ee2dad2825a77d33b63f13a404adde21a9f28..99b072e96a2d5ebd2007066374b5560ffce67259 100644 --- a/src/xercesc/util/MsgLoaders/ICU/ICUMsgLoader.cpp +++ b/src/xercesc/util/MsgLoaders/ICU/ICUMsgLoader.cpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.19 2003/12/17 03:56:15 neilg + * add default memory manager parameter to loadMsg method that uses char * parameters + * * Revision 1.18 2003/11/19 23:08:02 peiyongz * build xercesc2_4_0 * @@ -399,7 +402,8 @@ bool ICUMsgLoader::loadMsg( const XMLMsgLoader::XMLMsgId msgToLoad , const char* const repText1 , const char* const repText2 , const char* const repText3 - , const char* const repText4) + , const char* const repText4 + , MemoryManager * const manager) { // // Transcode the provided parameters and call the other version, @@ -409,27 +413,28 @@ bool ICUMsgLoader::loadMsg( const XMLMsgLoader::XMLMsgId msgToLoad XMLCh* tmp2 = 0; XMLCh* tmp3 = 0; XMLCh* tmp4 = 0; + MemoryManager *managerToUse = (manager)?manager:XMLPlatformUtils::fgMemoryManager; bool bRet = false; if (repText1) - tmp1 = XMLString::transcode(repText1, XMLPlatformUtils::fgMemoryManager); + tmp1 = XMLString::transcode(repText1, managerToUse); if (repText2) - tmp2 = XMLString::transcode(repText2, XMLPlatformUtils::fgMemoryManager); + tmp2 = XMLString::transcode(repText2, managerToUse); if (repText3) - tmp3 = XMLString::transcode(repText3, XMLPlatformUtils::fgMemoryManager); + tmp3 = XMLString::transcode(repText3, managerToUse); if (repText4) - tmp4 = XMLString::transcode(repText4, XMLPlatformUtils::fgMemoryManager); + tmp4 = XMLString::transcode(repText4, managerToUse); bRet = loadMsg(msgToLoad, toFill, maxChars, tmp1, tmp2, tmp3, tmp4); if (tmp1) - XMLPlatformUtils::fgMemoryManager->deallocate(tmp1);//delete [] tmp1; + managerToUse->deallocate(tmp1);//delete [] tmp1; if (tmp2) - XMLPlatformUtils::fgMemoryManager->deallocate(tmp2);//delete [] tmp2; + managerToUse->deallocate(tmp2);//delete [] tmp2; if (tmp3) - XMLPlatformUtils::fgMemoryManager->deallocate(tmp3);//delete [] tmp3; + managerToUse->deallocate(tmp3);//delete [] tmp3; if (tmp4) - XMLPlatformUtils::fgMemoryManager->deallocate(tmp4);//delete [] tmp4; + managerToUse->deallocate(tmp4);//delete [] tmp4; return bRet; } diff --git a/src/xercesc/util/MsgLoaders/ICU/ICUMsgLoader.hpp b/src/xercesc/util/MsgLoaders/ICU/ICUMsgLoader.hpp index bfc77545cead80e1b88b1717cd709fbf407c1315..466eebd5db74337e4b33a9b9d801c2d4e5bcd97e 100644 --- a/src/xercesc/util/MsgLoaders/ICU/ICUMsgLoader.hpp +++ b/src/xercesc/util/MsgLoaders/ICU/ICUMsgLoader.hpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.7 2003/12/17 03:56:15 neilg + * add default memory manager parameter to loadMsg method that uses char * parameters + * * Revision 1.6 2003/05/15 18:29:48 knoaman * Partial implementation of the configurable memory manager. * @@ -153,6 +156,7 @@ public : , const char* const repText2 = 0 , const char* const repText3 = 0 , const char* const repText4 = 0 + , MemoryManager * const manager = 0 ); diff --git a/src/xercesc/util/MsgLoaders/InMemory/InMemMsgLoader.cpp b/src/xercesc/util/MsgLoaders/InMemory/InMemMsgLoader.cpp index 3c2d69676a93fec7b5e1b99e0df1d728a3837f10..5b9e6e5d452e75d430908e88397f149ce763a6cc 100644 --- a/src/xercesc/util/MsgLoaders/InMemory/InMemMsgLoader.cpp +++ b/src/xercesc/util/MsgLoaders/InMemory/InMemMsgLoader.cpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.9 2003/12/17 03:56:15 neilg + * add default memory manager parameter to loadMsg method that uses char * parameters + * * Revision 1.8 2003/05/15 18:29:49 knoaman * Partial implementation of the configurable memory manager. * @@ -221,7 +224,8 @@ bool InMemMsgLoader::loadMsg(const XMLMsgLoader::XMLMsgId msgToLoad , const char* const repText1 , const char* const repText2 , const char* const repText3 - , const char* const repText4) + , const char* const repText4 + , MemoryManager * const manager) { // // Transcode the provided parameters and call the other version, @@ -231,27 +235,28 @@ bool InMemMsgLoader::loadMsg(const XMLMsgLoader::XMLMsgId msgToLoad XMLCh* tmp2 = 0; XMLCh* tmp3 = 0; XMLCh* tmp4 = 0; + MemoryManager *managerToUse = (manager)?manager:XMLPlatformUtils::fgMemoryManager; bool bRet = false; if (repText1) - tmp1 = XMLString::transcode(repText1, XMLPlatformUtils::fgMemoryManager); + tmp1 = XMLString::transcode(repText1, managerToUse); if (repText2) - tmp2 = XMLString::transcode(repText2, XMLPlatformUtils::fgMemoryManager); + tmp2 = XMLString::transcode(repText2, managerToUse); if (repText3) - tmp3 = XMLString::transcode(repText3, XMLPlatformUtils::fgMemoryManager); + tmp3 = XMLString::transcode(repText3, managerToUse); if (repText4) - tmp4 = XMLString::transcode(repText4, XMLPlatformUtils::fgMemoryManager); + tmp4 = XMLString::transcode(repText4, managerToUse); bRet = loadMsg(msgToLoad, toFill, maxChars, tmp1, tmp2, tmp3, tmp4); if (tmp1) - XMLPlatformUtils::fgMemoryManager->deallocate(tmp1);//delete [] tmp1; + managerToUse->deallocate(tmp1);//delete [] tmp1; if (tmp2) - XMLPlatformUtils::fgMemoryManager->deallocate(tmp2);//delete [] tmp2; + managerToUse->deallocate(tmp2);//delete [] tmp2; if (tmp3) - XMLPlatformUtils::fgMemoryManager->deallocate(tmp3);//delete [] tmp3; + managerToUse->deallocate(tmp3);//delete [] tmp3; if (tmp4) - XMLPlatformUtils::fgMemoryManager->deallocate(tmp4);//delete [] tmp4; + managerToUse->deallocate(tmp4);//delete [] tmp4; return bRet; } diff --git a/src/xercesc/util/MsgLoaders/InMemory/InMemMsgLoader.hpp b/src/xercesc/util/MsgLoaders/InMemory/InMemMsgLoader.hpp index 2a0878c54b116299a92f6207fd6b89184f51bd51..01496fd55b9ab057236c8490d6a6bb90f22714b5 100644 --- a/src/xercesc/util/MsgLoaders/InMemory/InMemMsgLoader.hpp +++ b/src/xercesc/util/MsgLoaders/InMemory/InMemMsgLoader.hpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.4 2003/12/17 03:56:15 neilg + * add default memory manager parameter to loadMsg method that uses char * parameters + * * Revision 1.3 2003/03/07 18:15:44 tng * Return a reference instead of void for operator= * @@ -140,6 +143,7 @@ public : , const char* const repText2 = 0 , const char* const repText3 = 0 , const char* const repText4 = 0 + , MemoryManager * const manager = 0 ); diff --git a/src/xercesc/util/MsgLoaders/MsgCatalog/MsgCatalogLoader.cpp b/src/xercesc/util/MsgLoaders/MsgCatalog/MsgCatalogLoader.cpp index 5da56823c6788f1bf52a695ce26bd167fabdedbb..22ac3a818ffe53a6ec6c15f770f1af2bb003820a 100644 --- a/src/xercesc/util/MsgLoaders/MsgCatalog/MsgCatalogLoader.cpp +++ b/src/xercesc/util/MsgLoaders/MsgCatalog/MsgCatalogLoader.cpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.16 2003/12/17 03:56:15 neilg + * add default memory manager parameter to loadMsg method that uses char * parameters + * * Revision 1.15 2003/08/21 16:36:08 peiyongz * use PlatformUtils::panic() * @@ -282,7 +285,8 @@ bool MsgCatalogLoader::loadMsg(const XMLMsgLoader::XMLMsgId msgToLoad , const char* const repText1 , const char* const repText2 , const char* const repText3 - , const char* const repText4) + , const char* const repText4 + , MemoryManager * const manager) { // // Transcode the provided parameters and call the other version, @@ -292,27 +296,28 @@ bool MsgCatalogLoader::loadMsg(const XMLMsgLoader::XMLMsgId msgToLoad XMLCh* tmp2 = 0; XMLCh* tmp3 = 0; XMLCh* tmp4 = 0; + MemoryManager *managerOoUse = (manager)?manager:XMLPlatformUtils::fgMemoryManager; bool bRet = false; if (repText1) - tmp1 = XMLString::transcode(repText1, XMLPlatformUtils::fgMemoryManager); + tmp1 = XMLString::transcode(repText1, managerToUse); if (repText2) - tmp2 = XMLString::transcode(repText2, XMLPlatformUtils::fgMemoryManager); + tmp2 = XMLString::transcode(repText2, managerToUse); if (repText3) - tmp3 = XMLString::transcode(repText3, XMLPlatformUtils::fgMemoryManager); + tmp3 = XMLString::transcode(repText3, managerToUse); if (repText4) - tmp4 = XMLString::transcode(repText4, XMLPlatformUtils::fgMemoryManager); + tmp4 = XMLString::transcode(repText4, managerToUse); bRet = loadMsg(msgToLoad, toFill, maxChars, tmp1, tmp2, tmp3, tmp4); if (tmp1) - XMLPlatformUtils::fgMemoryManager->deallocate(tmp1);//delete [] tmp1; + managerToUse->deallocate(tmp1);//delete [] tmp1; if (tmp2) - XMLPlatformUtils::fgMemoryManager->deallocate(tmp2);//delete [] tmp2; + managerToUse->deallocate(tmp2);//delete [] tmp2; if (tmp3) - XMLPlatformUtils::fgMemoryManager->deallocate(tmp3);//delete [] tmp3; + managerToUse->deallocate(tmp3);//delete [] tmp3; if (tmp4) - XMLPlatformUtils::fgMemoryManager->deallocate(tmp4);//delete [] tmp4; + managerToUse->deallocate(tmp4);//delete [] tmp4; return bRet; } diff --git a/src/xercesc/util/MsgLoaders/MsgCatalog/MsgCatalogLoader.hpp b/src/xercesc/util/MsgLoaders/MsgCatalog/MsgCatalogLoader.hpp index df794a4c4c35a9c3fca2296e6fa295e9efc74a02..65ad7f4e8dc3d7759054d7e6f50b4adcfd77b9fa 100644 --- a/src/xercesc/util/MsgLoaders/MsgCatalog/MsgCatalogLoader.hpp +++ b/src/xercesc/util/MsgLoaders/MsgCatalog/MsgCatalogLoader.hpp @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.6 2003/12/17 03:56:15 neilg + * add default memory manager parameter to loadMsg method that uses char * parameters + * * Revision 1.5 2003/03/07 18:15:44 tng * Return a reference instead of void for operator= * @@ -140,6 +143,7 @@ public : , const char* const repText2 = 0 , const char* const repText3 = 0 , const char* const repText4 = 0 + , MemoryManager * const manager = 0 ); diff --git a/src/xercesc/util/MsgLoaders/MsgFile/MsgLoader.cpp b/src/xercesc/util/MsgLoaders/MsgFile/MsgLoader.cpp index e3fea7a6c7ad3057405b494c08cb1cd12d7dcaf5..6c0b4875401820773e796239f0b96cea6dbe17cc 100644 --- a/src/xercesc/util/MsgLoaders/MsgFile/MsgLoader.cpp +++ b/src/xercesc/util/MsgLoaders/MsgFile/MsgLoader.cpp @@ -231,7 +231,8 @@ bool MsgCatalogLoader::loadMsg(const XMLMsgLoader::XMLMsgId msgToLoad , const char* const repText1 , const char* const repText2 , const char* const repText3 - , const char* const repText4) + , const char* const repText4 + , MemoryManager * const manager) { char * msgId; int size=0; @@ -251,6 +252,7 @@ bool MsgCatalogLoader::loadMsg(const XMLMsgLoader::XMLMsgId msgToLoad msgId = DOMMsg[msgToLoad - 2]; // Call the other version to load up the message + // note that no one is deleting repTexts... if (!localMsg(msgId, toFill, maxChars, repTexts, size)) return false; diff --git a/src/xercesc/util/MsgLoaders/MsgFile/MsgLoader.hpp b/src/xercesc/util/MsgLoaders/MsgFile/MsgLoader.hpp index f3c513021b8db55f5f3c20c72ac69fbcf69b8153..c6d7964f64b9a2f816b0bdb249d8bdc595c93677 100644 --- a/src/xercesc/util/MsgLoaders/MsgFile/MsgLoader.hpp +++ b/src/xercesc/util/MsgLoaders/MsgFile/MsgLoader.hpp @@ -111,6 +111,7 @@ public : , const char* const repText2 = 0 , const char* const repText3 = 0 , const char* const repText4 = 0 + , MemoryManager * const manager = 0 );