Столкнулся с проблемой, что не освобождается памяти от строк, которые вернулись lua_tostring. Если не удалять, то появляется утечка памяти. Что не так и как правильно освободить память?
Код |
---|
const char *getStringField(lua_State* state, const char* field)
{
lua_getfield(state, -1, field);
// lua_pushstring(state, field);
// lua_gettable(state, -2);
const auto result = lua_isnil(state, -1) ? "" : lua_tostring(state, -1);
lua_pop(state, 1);
return result;
}
const auto firmid = getStringField(state, "firmid");
delete[] firmid; // Бабах ошибка Unknown error. Possible unhandled exception.
|