From b3c0d2ead1f384b35615be562c5f06804e8990cb Mon Sep 17 00:00:00 2001 From: Alexander Pickering Date: Fri, 31 Aug 2018 21:46:18 -0400 Subject: Fixed wchar_t not being null terminated Occasionally wierd characters would show in place of a window title or button label, this was due to whcar_t s missing their sentinal characters. --- src/client/lua_api/gui/iguielement.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'src/client/lua_api/gui/iguielement.cpp') diff --git a/src/client/lua_api/gui/iguielement.cpp b/src/client/lua_api/gui/iguielement.cpp index e63d986..7132441 100644 --- a/src/client/lua_api/gui/iguielement.cpp +++ b/src/client/lua_api/gui/iguielement.cpp @@ -95,9 +95,11 @@ int getiguitext(lua_State* L){ irr::gui::IGUIElement *el = (IGUIElement*)lua_touserdata(L,-1); lua_pop(L,2);// const wchar_t *t = el->getText(); - size_t strlen = wcslen(t); - char output[strlen]; - wcstombs(output,t,strlen); + size_t cstrlen = wcslen(t); + __mingw_printf("In gui get text, cstrlen is %zu\n",cstrlen); + char output[cstrlen + 1];//+1 for \0 + wcstombs(output,t,cstrlen); + output[cstrlen] = '\0'; lua_pushstring(L,output);//"str" return 1; } -- cgit v1.2.3-70-g09d2