Предположим, я вызываю функцию Lua из C, которая возвращает один результат.Если он возвращает ошибку, результаты все еще будут в стеке?
Например, должен ли существовать первый lua_pop
в следующем коде?
if (lua_pcall(L, nArgs, 1, 0)) {
lua_pop(L, 1); //should this exist?
DisplayLuaError(L);
return -1;
} else {
int x = lua_tonumber(L, -1);
lua_pop(1);
return x;
}