Merge "pbx_lua: Support displaying lua error message if no debug table exists"

This commit is contained in:
Jenkins2
2018-05-03 11:41:35 -05:00
committed by Gerrit Code Review

View File

@@ -805,7 +805,19 @@ static int lua_error_function(lua_State *L)
lua_pushliteral(L, "\n");
lua_getglobal(L, "debug");
if (!lua_istable(L, -1)) {
/* Have no 'debug' table for whatever reason */
lua_pop(L, 2);
/* Original err message is on stack top now */
return 1;
}
lua_getfield(L, -1, "traceback");
if (!lua_isfunction(L, -1)) {
/* Same here for traceback function */
lua_pop(L, 3);
/* Original err message is on stack top now */
return 1;
}
lua_remove(L, -2); /* remove the 'debug' table */
lua_pushvalue(L, message_index);