initialize m_initialized to false to avoid spurious asserts

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@26247 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2004-03-17 22:20:42 +00:00
parent ca16b7a98e
commit ea8f6fc718
2 changed files with 20 additions and 10 deletions

View File

@@ -371,29 +371,36 @@ public:
// ----------- // -----------
// call Init() if you use this ctor // call Init() if you use this ctor
wxLocale(); wxLocale() { DoCommonInit(); }
// the ctor has a side effect of changing current locale // the ctor has a side effect of changing current locale
wxLocale(const wxChar *szName, // name (for messages) wxLocale(const wxChar *szName, // name (for messages)
const wxChar *szShort = (const wxChar *) NULL, // dir prefix (for msg files) const wxChar *szShort = (const wxChar *) NULL, // dir prefix (for msg files)
const wxChar *szLocale = (const wxChar *) NULL, // locale (for setlocale) const wxChar *szLocale = (const wxChar *) NULL, // locale (for setlocale)
bool bLoadDefault = TRUE, // preload wxstd.mo? bool bLoadDefault = true, // preload wxstd.mo?
bool bConvertEncoding = FALSE) // convert Win<->Unix if neccessary? bool bConvertEncoding = false) // convert Win<->Unix if neccessary?
{ {
DoCommonInit();
Init(szName, szShort, szLocale, bLoadDefault, bConvertEncoding); Init(szName, szShort, szLocale, bLoadDefault, bConvertEncoding);
} }
wxLocale(int language, // wxLanguage id or custom language wxLocale(int language, // wxLanguage id or custom language
int flags = wxLOCALE_LOAD_DEFAULT | wxLOCALE_CONV_ENCODING) int flags = wxLOCALE_LOAD_DEFAULT | wxLOCALE_CONV_ENCODING)
{ Init(language, flags); } {
DoCommonInit();
// the same as a function (returns TRUE on success) Init(language, flags);
}
// the same as a function (returns true on success)
bool Init(const wxChar *szName, bool Init(const wxChar *szName,
const wxChar *szShort = (const wxChar *) NULL, const wxChar *szShort = (const wxChar *) NULL,
const wxChar *szLocale = (const wxChar *) NULL, const wxChar *szLocale = (const wxChar *) NULL,
bool bLoadDefault = TRUE, bool bLoadDefault = true,
bool bConvertEncoding = FALSE); bool bConvertEncoding = false);
// same as second ctor (returns TRUE on success) // same as second ctor (returns true on success)
bool Init(int language = wxLANGUAGE_DEFAULT, bool Init(int language = wxLANGUAGE_DEFAULT,
int flags = wxLOCALE_LOAD_DEFAULT | wxLOCALE_CONV_ENCODING); int flags = wxLOCALE_LOAD_DEFAULT | wxLOCALE_CONV_ENCODING);
@@ -416,7 +423,7 @@ public:
// is used, the US default value is returned if everything else fails // is used, the US default value is returned if everything else fails
static wxString GetInfo(wxLocaleInfo index, wxLocaleCategory cat); static wxString GetInfo(wxLocaleInfo index, wxLocaleCategory cat);
// return TRUE if the locale was set successfully // return true if the locale was set successfully
bool IsOk() const { return m_pszOldLocale != NULL; } bool IsOk() const { return m_pszOldLocale != NULL; }
// returns locale name // returns locale name
@@ -509,6 +516,9 @@ private:
// m_langugagesInfo, called by InitLanguagesDB // m_langugagesInfo, called by InitLanguagesDB
static void InitLanguagesDB(); static void InitLanguagesDB();
// initialize the member fields to default values
void DoCommonInit();
wxString m_strLocale, // this locale name wxString m_strLocale, // this locale name
m_strShort; // short name for the locale m_strShort; // short name for the locale
int m_language; // this locale wxLanguage value int m_language; // this locale wxLanguage value

View File

@@ -1376,7 +1376,7 @@ wxLanguageInfoArray *wxLocale::ms_languagesDB = NULL;
} }
wxLocale::wxLocale() void wxLocale::DoCommonInit()
{ {
m_pszOldLocale = NULL; m_pszOldLocale = NULL;
m_pMsgCat = NULL; m_pMsgCat = NULL;