Fix crash in LuaUtil::ScriptsContainer::~ScriptsContainer()

pull/3141/head
Petr Mikheev 3 years ago
parent e24937df3b
commit 24ecdc37a7

@ -328,6 +328,12 @@ namespace LuaUtil
std::make_heap(mHoursTimersQueue.begin(), mHoursTimersQueue.end());
}
ScriptsContainer::~ScriptsContainer()
{
for (auto& [_, script] : mScripts)
script.mHiddenData[ScriptId::KEY] = sol::nil;
}
void ScriptsContainer::removeAllScripts()
{
for (auto& [_, script] : mScripts)

@ -75,7 +75,7 @@ namespace LuaUtil
ScriptsContainer(LuaUtil::LuaState* lua, std::string_view namePrefix);
ScriptsContainer(const ScriptsContainer&) = delete;
ScriptsContainer(ScriptsContainer&&) = delete;
virtual ~ScriptsContainer() { removeAllScripts(); }
virtual ~ScriptsContainer();
// Adds package that will be available (via `require`) for all scripts in the container.
// Automatically applies LuaUtil::makeReadOnly to the package.

Loading…
Cancel
Save