From d5770fb8a359ae564593d0cbf271827be81608fc Mon Sep 17 00:00:00 2001 From: zeromus Date: Sat, 22 Jul 2017 23:41:12 -0500 Subject: [PATCH] re-apply "keepalive" GC fixes to luainterface mode in emuhawk; maybe it will actually work now and not result in crashes. at least we should check it. --- BizHawk.Client.Common/lua/LuaFile.cs | 2 +- BizHawk.Client.EmuHawk/tools/Lua/Libraries/EmuLuaLibrary.cs | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/BizHawk.Client.Common/lua/LuaFile.cs b/BizHawk.Client.Common/lua/LuaFile.cs index 0358c3ffa5..63ae59c75e 100644 --- a/BizHawk.Client.Common/lua/LuaFile.cs +++ b/BizHawk.Client.Common/lua/LuaFile.cs @@ -49,7 +49,7 @@ public void Stop() { State = RunState.Disabled; - if(NLua.Lua.WhichLua == "NLua") + //if(NLua.Lua.WhichLua == "NLua") Thread.GetTable("keepalives")[Thread] = null; Thread = null; } diff --git a/BizHawk.Client.EmuHawk/tools/Lua/Libraries/EmuLuaLibrary.cs b/BizHawk.Client.EmuHawk/tools/Lua/Libraries/EmuLuaLibrary.cs index 97c8ac58dd..30b1c40f7c 100644 --- a/BizHawk.Client.EmuHawk/tools/Lua/Libraries/EmuLuaLibrary.cs +++ b/BizHawk.Client.EmuHawk/tools/Lua/Libraries/EmuLuaLibrary.cs @@ -18,7 +18,7 @@ namespace BizHawk.Client.EmuHawk public EmuLuaLibrary() { Docs = new LuaDocumentation(); - if(NLua.Lua.WhichLua == "NLua") + //if(NLua.Lua.WhichLua == "NLua") _lua["keepalives"] = _lua.NewTable(); } @@ -178,7 +178,7 @@ namespace BizHawk.Client.EmuHawk var content = File.ReadAllText(file); var main = lua.LoadString(content, "main"); lua.Push(main); // push main function on to stack for subsequent resuming - if (NLua.Lua.WhichLua == "NLua") + //if (NLua.Lua.WhichLua == "NLua") { _lua.GetTable("keepalives")[lua] = 1; //this not being run is the origin of a memory leak if you restart scripts too many times @@ -191,7 +191,7 @@ namespace BizHawk.Client.EmuHawk { _currThread = _lua.NewThread(); _currThread.DoString(command); - if (NLua.Lua.WhichLua == "NLua") + //if (NLua.Lua.WhichLua == "NLua") _lua.Pop(); }