diff --git a/src/xercesc/util/XMLMsgLoader.cpp b/src/xercesc/util/XMLMsgLoader.cpp
index fd9a92be590cef17749c1eb7aa3d08dd4becd03c..9ceb2faf987fa04766bf948c49e38c98266b9627 100644
--- a/src/xercesc/util/XMLMsgLoader.cpp
+++ b/src/xercesc/util/XMLMsgLoader.cpp
@@ -65,14 +65,7 @@ void  XMLMsgLoader::setLocale(const char* const localeToAdopt)
      */
     if (localeToAdopt && (strlen(localeToAdopt) == 2 || (strlen(localeToAdopt) > 3 && localeToAdopt[2]=='_')))
     {
-        XMLCh *transcoded = XMLString::transcode(localeToAdopt, XMLPlatformUtils::fgMemoryManager);
-        if (transcoded[0] && transcoded[1] && (!transcoded[2] || transcoded[2]==chUnderscore))
-        {
-            fLocale   = XMLString::replicate(localeToAdopt, XMLPlatformUtils::fgMemoryManager);
-            memcpy(fLanguage, transcoded, 2 * sizeof(XMLCh));
-            fLanguage[2]=0;
-            XMLPlatformUtils::fgMemoryManager->deallocate(transcoded);
-        }
+        fLocale   = XMLString::replicate(localeToAdopt, XMLPlatformUtils::fgMemoryManager);                   
     }
 
 }
diff --git a/src/xercesc/util/XMLMsgLoader.hpp b/src/xercesc/util/XMLMsgLoader.hpp
index 637c355ddc57aae2df8b7a0823081ab18285c69f..55616da79ce0813de786059fbc80159a4011d706 100644
--- a/src/xercesc/util/XMLMsgLoader.hpp
+++ b/src/xercesc/util/XMLMsgLoader.hpp
@@ -160,7 +160,6 @@ private :
     // -----------------------------------------------------------------------
     static char*    fLocale;
     static char*    fPath;
-    static XMLCh    fLanguage[];
 };