X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/0c62004afb4926ecce56883250aaf72890b2ff9d..fc32630a5e03e60a67d4ef53fc59985ea087b451:/src/common/wxcrt.cpp diff --git a/src/common/wxcrt.cpp b/src/common/wxcrt.cpp index 84bf3e438c..9bd6305307 100644 --- a/src/common/wxcrt.cpp +++ b/src/common/wxcrt.cpp @@ -133,27 +133,6 @@ WXDLLIMPEXP_BASE size_t wxWC2MB(char *buf, const wchar_t *pwz, size_t n) } #endif // wxUSE_WCHAR_T -WXDLLIMPEXP_BASE bool wxOKlibc() -{ -#if wxUSE_WCHAR_T && defined(__UNIX__) && defined(__GLIBC__) && !defined(__WINE__) - // glibc 2.0 uses UTF-8 even when it shouldn't - wchar_t res = 0; - if ((MB_CUR_MAX == 2) && - (wxMB2WC(&res, "\xdd\xa5", 1) == 1) && - (res==0x765)) { - // this is UTF-8 allright, check whether that's what we want - char *cur_locale = setlocale(LC_CTYPE, NULL); - if ((strlen(cur_locale) < 4) || - (strcasecmp(cur_locale + strlen(cur_locale) - 4, "utf8")) || - (strcasecmp(cur_locale + strlen(cur_locale) - 5, "utf-8"))) { - // nope, don't use libc conversion - return false; - } - } -#endif - return true; -} - char* wxSetlocale(int category, const char *locale) { #ifdef __WXWINCE__ @@ -325,7 +304,8 @@ static int vswscanf(const wchar_t *ws, const wchar_t *format, va_list argptr) wxCHECK_MSG( wxStrstr(format, _T("%c")) == NULL, -1, _T("incomplete vswscanf implementation doesn't allow %c") ); - return vsscanf(wxConvLibc.cWX2MB(ws), wxConvLibc.cWX2MB(format), argptr); + return vsscanf(wx_static_cast(const char*, wxConvLibc.cWX2MB(ws)), + wxConvLibc.cWX2MB(format), argptr); } #endif @@ -1289,7 +1269,7 @@ wchar_t *wxFgets(wchar_t *s, int size, FILE *stream) // wxScanf() and friends // ---------------------------------------------------------------------------- -#ifndef HAVE_NO_VSSCANF // __VISUALC__ and __DMC__ see wx/crt.h +#ifdef HAVE_VSSCANF // __VISUALC__ and __DMC__ see wx/crt.h int wxVsscanf(const char *str, const char *format, va_list ap) { return wxCRT_VsscanfA(str, format, ap); } int wxVsscanf(const wchar_t *str, const wchar_t *format, va_list ap)