if ( !!charset )
csConv = new wxCSConv(charset);
- wxMBConv& inputConv = csConv ? *csConv : *wxConvCurrent;
+ wxMBConv& inputConv = csConv ? *((wxMBConv*)csConv) : *wxConvCurrent;
for (size_t i = 0; i < m_numStrings; i++)
{
#if wxUSE_FONTMAP
if ( convertEncoding )
{
+ wxFontEncoding targetEnc = wxFONTENCODING_SYSTEM;
wxFontEncoding enc = wxTheFontMapper->CharsetToEncoding(charset, FALSE);
if ( enc == wxFONTENCODING_SYSTEM )
{
}
else
{
- wxFontEncoding targetEnc = wxLocale::GetSystemEncoding();
+ targetEnc = wxLocale::GetSystemEncoding();
if (targetEnc == wxFONTENCODING_SYSTEM)
{
wxFontEncodingArray a = wxEncodingConverter::GetPlatformEquivalents(enc);
}
if ( !convertEncoding )
- #else // !wxUSE_FONTMAP
+ #endif // wxUSE_FONTMAP/!wxUSE_FONTMAP
{
for (size_t i = 0; i < m_numStrings; i++)
{
hash[key] = StringAtOfs(m_pTransTable, i);
}
}
- #endif // wxUSE_FONTMAP/!wxUSE_FONTMAP
#endif // wxUSE_WCHAR_T/!wxUSE_WCHAR_T
}
// ----------------------------------------------------------------------------
bool wxMsgCatalog::Load(const wxChar *szDirPrefix, const wxChar *szName,
- bool bConvertEncoding = FALSE)
+ bool bConvertEncoding)
{
wxMsgCatalogFile file;
file.FillHash(m_messages, bConvertEncoding);
return TRUE;
}
- else
- return FALSE;
+
+ return FALSE;
}
const wxChar *wxMsgCatalog::GetString(const wxChar *sz) const
char *alang = nl_langinfo(CODESET);
setlocale(LC_CTYPE, oldLocale);
free(oldLocale);
- if (alang)
+
+ if ( alang )
{
-#ifdef __SOLARIS__
+ // 7 bit ASCII encoding has several alternative names which we should
+ // recognize to avoid warnings about unrecognized encoding on each
+ // program startup
+
// nl_langinfo() under Solaris returns 646 by default which stands for
- // ISO-646, i.e. 7 bit ASCII and we should recognize it to avoid
- // warnings about unrecognized encoding on each program startup
- if ( strcmp(alang, "646") == 0 )
+ // ISO-646, i.e. 7 bit ASCII
+ //
+ // and recent glibc call it ANSI_X3.4-1968...
+ if ( strcmp(alang, "646") == 0 ||
+ strcmp(alang, "ANSI_X3.4-1968") == 0 )
{
encname = _T("US-ASCII");
}
else
-#endif // __SOLARIS__
{
encname = wxConvLibc.cMB2WX(alang);
}