From 269eb100c4e2d07ddc941bf1490f47b62d122080 Mon Sep 17 00:00:00 2001 From: Neil Graham <neilg@apache.org> Date: Wed, 17 Dec 2003 03:56:15 +0000 Subject: [PATCH] add default memory manager parameter to loadMsg method that uses char * parameters git-svn-id: https://svn.apache.org/repos/asf/xerces/c/trunk@175588 13f79535-47bb-0310-9956-ffa450edef68 --- .../util/MsgLoaders/ICU/ICUMsgLoader.cpp | 23 +++++++++++-------- .../util/MsgLoaders/ICU/ICUMsgLoader.hpp | 4 ++++ .../MsgLoaders/InMemory/InMemMsgLoader.cpp | 23 +++++++++++-------- .../MsgLoaders/InMemory/InMemMsgLoader.hpp | 4 ++++ .../MsgCatalog/MsgCatalogLoader.cpp | 23 +++++++++++-------- .../MsgCatalog/MsgCatalogLoader.hpp | 4 ++++ .../util/MsgLoaders/MsgFile/MsgLoader.cpp | 4 +++- .../util/MsgLoaders/MsgFile/MsgLoader.hpp | 1 + 8 files changed, 58 insertions(+), 28 deletions(-) diff --git a/src/xercesc/util/MsgLoaders/ICU/ICUMsgLoader.cpp b/src/xercesc/util/MsgLoaders/ICU/ICUMsgLoader.cpp index ec1ee2dad..99b072e96 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 bfc77545c..466eebd5d 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 3c2d69676..5b9e6e5d4 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 2a0878c54..01496fd55 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 5da56823c..22ac3a818 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 df794a4c4..65ad7f4e8 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 e3fea7a6c..6c0b48754 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 f3c513021..c6d7964f6 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 ); -- GitLab