]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/intl.cpp
extracted Unix code in a separate new file (src/unix/dlunix.cpp), it remains only...
[wxWidgets.git] / src / common / intl.cpp
index f0512af3cc59702465f61366e383d402175f4fc9..d9dd83410c281da1dd30ce16a8ef2ba8c12c72ff 100644 (file)
@@ -1402,7 +1402,9 @@ wxLanguageInfoArray *wxLocale::ms_languagesDB = NULL;
 void wxLocale::DoCommonInit()
 {
   m_pszOldLocale = NULL;
-  m_pOldLocale = NULL;
+
+  m_pOldLocale = wxSetLocale(this);
+
   m_pMsgCat = NULL;
   m_language = wxLANGUAGE_UNKNOWN;
   m_initialized = false;
@@ -1471,9 +1473,6 @@ bool wxLocale::Init(const wxChar *szName,
     }
   }
 
-  // save the old locale to be able to restore it later
-  m_pOldLocale = wxSetLocale(this);
-
   // load the default catalog with wxWidgets standard messages
   m_pMsgCat = NULL;
   bool bOk = true;
@@ -1687,7 +1686,7 @@ bool wxLocale::Init(int language, int flags)
         return false;
     }
 #elif defined(__WXMAC__)
-    if (language == wxLANGUAGE_DEFAULT)
+    if (lang == wxLANGUAGE_DEFAULT)
         locale = wxEmptyString;
     else
         locale = info->CanonicalName;
@@ -2449,9 +2448,8 @@ wxLocale::~wxLocale()
         delete pTmpCat;
     }
 
-    // restore old locale if we had changed it
-    if ( m_pOldLocale )
-        wxSetLocale(m_pOldLocale);
+    // restore old locale pointer
+    wxSetLocale(m_pOldLocale);
 
     // FIXME
 #ifndef __WXWINCE__