diff --git a/configure.py b/configure.py index 5f46e7cb..b31a75eb 100644 --- a/configure.py +++ b/configure.py @@ -835,7 +835,7 @@ config.libs = [ Object(Matching, "MSL_C.PPCEABI.bare.H/k_cos.c"), Object(Matching, "MSL_C.PPCEABI.bare.H/k_rem_pio2.c"), Object(Matching, "MSL_C.PPCEABI.bare.H/k_sin.c"), - Object(NonMatching, "MSL_C.PPCEABI.bare.H/mbstring.c"), + Object(Matching, "MSL_C.PPCEABI.bare.H/mbstring.c"), Object(Matching, "MSL_C.PPCEABI.bare.H/mem.c"), Object(Matching, "MSL_C.PPCEABI.bare.H/mem_funcs.c"), Object(Matching, "MSL_C.PPCEABI.bare.H/misc_io.c"), diff --git a/src/static/MSL_C.PPCEABI.bare.H/mbstring.c b/src/static/MSL_C.PPCEABI.bare.H/mbstring.c index 11c308fd..88c466ec 100644 --- a/src/static/MSL_C.PPCEABI.bare.H/mbstring.c +++ b/src/static/MSL_C.PPCEABI.bare.H/mbstring.c @@ -32,6 +32,10 @@ size_t unicode_to_UTF8(char* r3, wchar_t r4) { } #pragma dont_inline off +size_t wctomb(char* s, wchar_t wchar) { + return unicode_to_UTF8(s, wchar); +} + size_t wcstombs(char* s, const wchar_t* pwcs, size_t n) { char decoded[4]; wchar_t w; @@ -51,7 +55,7 @@ size_t wcstombs(char* s, const wchar_t* pwcs, size_t n) { break; } ++p; - num = unicode_to_UTF8(decoded, w); + num = wctomb(decoded, w); if (i + num > n) break;