X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/putty/blobdiff_plain/a7419ea4b837b23a36ea0eb71b0c24a31a49d3fc..e8e8d6e2aaec02b9687ca8f2029bb6473acb0ec7:/unicode.c diff --git a/unicode.c b/unicode.c index 90faf590..f8cd3b51 100644 --- a/unicode.c +++ b/unicode.c @@ -1,4 +1,6 @@ +#ifdef WINDOWS #include +#endif #include #include @@ -612,8 +614,7 @@ void lpage_send(int codepage, char *buf, int len, int interactive) widesize = len * 2; } - wclen = - MultiByteToWideChar(codepage, 0, buf, len, widebuffer, widesize); + wclen = mb_to_wc(codepage, 0, buf, len, widebuffer, widesize); luni_send(widebuffer, wclen, interactive); } @@ -651,8 +652,8 @@ void luni_send(wchar_t * widebuf, int len, int interactive) } } else if (!uni_tbl) { int rv; - rv = WideCharToMultiByte(line_codepage, 0, widebuf, len, - linebuffer, linesize, NULL, NULL); + rv = wc_to_mb(line_codepage, 0, widebuf, len, + linebuffer, linesize, NULL, NULL); if (rv >= 0) p = linebuffer + rv; else @@ -1241,7 +1242,7 @@ void get_unitab(int codepage, wchar_t * unitab, int ftype) for (i = 0; i < max; i++) { tbuf[0] = i; - if (MultiByteToWideChar(codepage, flg, tbuf, 1, unitab + i, 1) + if (mb_to_wc(codepage, flg, tbuf, 1, unitab + i, 1) != 1) unitab[i] = 0xFFFD; }