Я пытаюсь записать таблицу в файл ini , все работало, пока я не добавил строку lua_tostring (L, -2) затем lua_next (L, -2 ) начал выдавать ошибку. Как эта строка может влиять, в моем понимании, я просто беру значение из стека и не более. Как я могу это исправить?
{
// Push an initial nil to init lua_next
lua_pushnil(inOutState);
// Parse the table at index
while (lua_next(inOutState, -2))
{
if (lua_isstring(inOutState, -1)) {
string key = lua_tostring(inOutState, -2);
string value = lua_tostring(inOutState, -1);
inIniTree.put(suffix + key, value);
}
else if (lua_istable(inOutState, -1)) {
suffix += lua_tostring(inOutState, -2); !!!!!! without this line function is working well !!!!!!!
setDataInIni(inOutState, inIniTree, suffix);
}
// Pop value, keep key
lua_pop(inOutState, 1);
}
return;
}