From 1f18d88f565844436fb4487b596175ba48138c05 Mon Sep 17 00:00:00 2001 From: Pietro Gagliardi Date: Thu, 9 Apr 2015 09:23:44 -0400 Subject: Split toUTF16() into a new file; other Windows text functions will also be there. --- new/text_windows.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 new/text_windows.c (limited to 'new/text_windows.c') diff --git a/new/text_windows.c b/new/text_windows.c new file mode 100644 index 0000000..e483a95 --- /dev/null +++ b/new/text_windows.c @@ -0,0 +1,18 @@ +// 9 april 2015 +#include "uipriv_windows.h" + +#define MBTWC(str, wstr, bufsiz) MultiByteToWideChar(CP_UTF8, 0, str, -1, wstr, bufsiz) + +WCHAR *toUTF16(const char *str) +{ + WCHAR *wstr; + int n; + + n = MBTWC(str, NULL, 0); + if (n == 0) + logLastError("error figuring out number of characters to convert to in toUTF16()"); + wstr = (WCHAR *) uiAlloc(n * sizeof (WCHAR), "WCHAR[]"); + if (MBTWC(str, wstr, n) != n) + logLastError("error converting from UTF-8 to UTF-16 in toUTF16()"); + return wstr; +} -- cgit v1.2.3