aboutsummaryrefslogtreecommitdiff
path: root/src/lj_clib.c
diff options
context:
space:
mode:
authorMike Pall <mike>2015-06-12 22:28:38 +0200
committerMike Pall <mike>2015-06-12 22:28:38 +0200
commit26b95a90f5f76f8a726ad0954f29781bec8ccc05 (patch)
tree87012c4e14c843891cd007a2a95bfaa95634e178 /src/lj_clib.c
parent458a40b7242aefe2f0893019f0451fb2f2deccd9 (diff)
downloadluajit-26b95a90f5f76f8a726ad0954f29781bec8ccc05.tar.gz
luajit-26b95a90f5f76f8a726ad0954f29781bec8ccc05.tar.bz2
luajit-26b95a90f5f76f8a726ad0954f29781bec8ccc05.zip
Add Xbox One port.
Diffstat (limited to 'src/lj_clib.c')
-rw-r--r--src/lj_clib.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/lj_clib.c b/src/lj_clib.c
index 6bdad67f..74b4b001 100644
--- a/src/lj_clib.c
+++ b/src/lj_clib.c
@@ -172,9 +172,17 @@ LJ_NORET LJ_NOINLINE static void clib_error(lua_State *L, const char *fmt,
172 const char *name) 172 const char *name)
173{ 173{
174 DWORD err = GetLastError(); 174 DWORD err = GetLastError();
175#if LJ_TARGET_XBOXONE
176 wchar_t wbuf[128];
177 char buf[128*2];
178 if (!FormatMessageW(FORMAT_MESSAGE_IGNORE_INSERTS|FORMAT_MESSAGE_FROM_SYSTEM,
179 NULL, err, 0, buf, sizeof(wbuf)/sizeof(wchar_t), NULL) ||
180 !WideCharToMultiByte(CP_ACP, 0, wbuf, 128, buf, 128*2, NULL, NULL))
181#else
175 char buf[128]; 182 char buf[128];
176 if (!FormatMessageA(FORMAT_MESSAGE_IGNORE_INSERTS|FORMAT_MESSAGE_FROM_SYSTEM, 183 if (!FormatMessageA(FORMAT_MESSAGE_IGNORE_INSERTS|FORMAT_MESSAGE_FROM_SYSTEM,
177 NULL, err, 0, buf, sizeof(buf), NULL)) 184 NULL, err, 0, buf, sizeof(buf), NULL))
185#endif
178 buf[0] = '\0'; 186 buf[0] = '\0';
179 lj_err_callermsg(L, lj_strfmt_pushf(L, fmt, name, buf)); 187 lj_err_callermsg(L, lj_strfmt_pushf(L, fmt, name, buf));
180} 188}