- optimize fall back lua state listener

This commit is contained in:
Anonymous-275 2023-01-21 19:07:04 +00:00
parent 19e28a3d4d
commit f46442d085

View File

@ -13,16 +13,19 @@ int BeamNG::lua_open_jit_D(lua_State* State) {
Memory::Print("Got lua State -> " + Memory::GetHex(reinterpret_cast<uint64_t>(State))); Memory::Print("Got lua State -> " + Memory::GetHex(reinterpret_cast<uint64_t>(State)));
GELua::State = State; GELua::State = State;
RegisterGEFunctions(); RegisterGEFunctions();
UpdateDetour->Enable();
return OpenJITDetour->Original(State); return OpenJITDetour->Original(State);
} }
uint64_t BeamNG::update_D(lua_State* State) { uint64_t BeamNG::update_D(lua_State* State) {
if(GELua::State != State) { if(GELua::State != State) {
Memory::Print("Got lua State -> " + Memory::GetHex(reinterpret_cast<uint64_t>(State))); Memory::Print("Fallback Got lua State -> " + Memory::GetHex(reinterpret_cast<uint64_t>(State)));
GELua::State = State; GELua::State = State;
RegisterGEFunctions(); RegisterGEFunctions();
} }
return UpdateDetour->Original(State); auto ret = UpdateDetour->Original(State);
UpdateDetour->Disable();
return ret;
} }
void BeamNG::EntryPoint() { void BeamNG::EntryPoint() {