Fix Android build of narrow_to_wide

master
ShadowNinja 2015-02-11 02:27:43 -05:00
parent f824866686
commit 98b37e3e0d
1 changed files with 5 additions and 4 deletions

View File

@ -62,20 +62,21 @@ int wctomb(char *s, wchar_t wc)
int mbtowc(wchar_t *pwc, const char *s, size_t n) int mbtowc(wchar_t *pwc, const char *s, size_t n)
{ {
wchar_t *intermediate = narrow_to_wide(s); const wchar_t *tmp = narrow_to_wide_c(s);
if (intermediate.length() > 0) { if (tmp[0] != '\0') {
*pwc = intermediate[0]; *pwc = tmp[0];
return 1; return 1;
} else { } else {
return -1; return -1;
} }
} }
// You must free the returned string! // You must free the returned string!
const wchar_t *narrow_to_wide_c(const char *mbs) const wchar_t *narrow_to_wide_c(const char *mbs)
{ {
size_t mbl = strlen(mbs); size_t mbl = strlen(mbs);
wchar_t wcs = new wchar_t[mbl + 1]; wchar_t *wcs = new wchar_t[mbl + 1];
for (size_t i = 0; i < mbl; i++) { for (size_t i = 0; i < mbl; i++) {
if (((unsigned char) mbs[i] > 31) && if (((unsigned char) mbs[i] > 31) &&