diff --git a/Source/Engine/Scripting/BinaryModule.cpp b/Source/Engine/Scripting/BinaryModule.cpp index 44ef32503..0cded22b4 100644 --- a/Source/Engine/Scripting/BinaryModule.cpp +++ b/Source/Engine/Scripting/BinaryModule.cpp @@ -533,7 +533,12 @@ void ScriptingType::HackObjectVTable(void* object, ScriptingTypeHandle baseTypeH if (!Script.VTable) { // Ensure to have valid Script VTable hacked - SetupScriptObjectVTable(object, baseTypeHandle, wrapperIndex); + BinaryModule::Locker.Lock(); + if (!Script.VTable) + { + SetupScriptObjectVTable(object, baseTypeHandle, wrapperIndex); + } + BinaryModule::Locker.Unlock(); } // Override object vtable with hacked one that has calls to overriden scripting functions