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);