From 4989d780b22b6a40866c417c16dda0ae55d46dad Mon Sep 17 00:00:00 2001 From: aunsane Date: Thu, 5 Oct 2017 21:24:06 +0300 Subject: MirLua: simplified print m_json reworked Encode --- plugins/MirLua/src/mlua.cpp | 20 +++++--------------- 1 file changed, 5 insertions(+), 15 deletions(-) (limited to 'plugins/MirLua/src') diff --git a/plugins/MirLua/src/mlua.cpp b/plugins/MirLua/src/mlua.cpp index 4dc3a2775a..d3ded45a40 100644 --- a/plugins/MirLua/src/mlua.cpp +++ b/plugins/MirLua/src/mlua.cpp @@ -38,24 +38,14 @@ static int mlua_print(lua_State *L) data.AppendFormat("%s", lua_toboolean(L, i) ? "true" : "false"); break; case LUA_TNUMBER: - case LUA_TSTRING: data.AppendFormat("%s", lua_tostring(L, i)); + case LUA_TSTRING: + data.AppendFormat("'%s'", lua_tostring(L, i)); break; default: - if (lua_getmetatable(L, 1)) - { - if (lua_getfield(L, -1, "__tostring") == LUA_TFUNCTION) - { - lua_pushvalue(L, 1); - if (luaM_pcall(L, 1, 1) == LUA_OK) - { - data.AppendFormat("%s", lua_tostring(L, -1)); - lua_pop(L, 2); - break; - } - lua_pop(L, 2); - } - lua_pop(L, 1); + if (luaL_callmeta(L, i, "__tostring")) { + data.AppendFormat("[[%s]]", lua_tostring(L, i)); + break; } data.AppendFormat("%s(0x%p)", luaL_typename(L, i), lua_topointer(L, i)); break; -- cgit v1.2.3