From 34d872628d5099ae520dd92433e211f561aaf611 Mon Sep 17 00:00:00 2001 From: ShadowNinja Date: Thu, 15 May 2014 19:09:47 -0400 Subject: [PATCH] Make print() NUL-safe --- src/script/lua_api/l_util.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/script/lua_api/l_util.cpp b/src/script/lua_api/l_util.cpp index b30bab29..57db632c 100644 --- a/src/script/lua_api/l_util.cpp +++ b/src/script/lua_api/l_util.cpp @@ -47,11 +47,12 @@ int ModApiUtil::l_debug(lua_State *L) lua_pushvalue(L, -1); /* function to be called */ lua_pushvalue(L, i); /* value to print */ lua_call(L, 1, 1); - const char *s = lua_tostring(L, -1); - if (i>1) + size_t len; + const char *s = lua_tolstring(L, -1, &len); + if (i > 1) dstream << "\t"; if (s) - dstream << s; + dstream << std::string(s, len); lua_pop(L, 1); } dstream << std::endl;