From fb0fc07579359c0055fc4ad92a005aa89dc9b817 Mon Sep 17 00:00:00 2001 From: Mattes D Date: Fri, 13 Jan 2017 10:31:05 +0100 Subject: Fixed race conditions and forgotten clear in Lua ref tracking. (#3530) This fixes occasional crashes on plugin reload. --- src/Generating/PrefabPiecePool.cpp | 1 + 1 file changed, 1 insertion(+) (limited to 'src/Generating/PrefabPiecePool.cpp') diff --git a/src/Generating/PrefabPiecePool.cpp b/src/Generating/PrefabPiecePool.cpp index d6c2c8819..407915e56 100644 --- a/src/Generating/PrefabPiecePool.cpp +++ b/src/Generating/PrefabPiecePool.cpp @@ -204,6 +204,7 @@ bool cPrefabPiecePool::LoadFromCubeset(const AString & a_Contents, const AString // Load the file in the Lua interpreter: cLuaState Lua(Printf("LoadablePiecePool %s", a_FileName.c_str())); Lua.Create(); + cLuaState::cLock lock(Lua); if (!Lua.LoadString(a_Contents, a_FileName, a_LogWarnings)) { // Reason for failure has already been logged in LoadFile() -- cgit v1.2.3