From bcf47bc67cf3e1c2f410a81e26ceab1bdab06b4a Mon Sep 17 00:00:00 2001 From: kwolekr Date: Wed, 5 Aug 2015 00:49:35 -0400 Subject: Improve Script CPP API diagnostics --- src/script/lua_api/l_env.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'src/script/lua_api') diff --git a/src/script/lua_api/l_env.cpp b/src/script/lua_api/l_env.cpp index 50c445d50..48c46c079 100644 --- a/src/script/lua_api/l_env.cpp +++ b/src/script/lua_api/l_env.cpp @@ -77,8 +77,9 @@ void LuaABM::trigger(ServerEnvironment *env, v3s16 p, MapNode n, pushnode(L, n, env->getGameDef()->ndef()); lua_pushnumber(L, active_object_count); lua_pushnumber(L, active_object_count_wider); - if(lua_pcall(L, 4, 0, errorhandler)) - script_error(L); + + PCALL_RESL(L, lua_pcall(L, 4, 0, errorhandler)); + lua_pop(L, 1); // Pop error handler } @@ -418,8 +419,9 @@ int ModApiEnvMod::l_add_item(lua_State *L) return 0; lua_pushvalue(L, 1); lua_pushstring(L, item.getItemString().c_str()); - if(lua_pcall(L, 2, 1, errorhandler)) - script_error(L); + + PCALL_RESL(L, lua_pcall(L, 2, 1, errorhandler)); + lua_remove(L, errorhandler); // Remove error handler return 1; } -- cgit v1.2.3