From c8fdd204a963ea228cf1a718f7fc9587399e6748 Mon Sep 17 00:00:00 2001 From: ame Date: Fri, 14 Nov 2025 02:42:56 -0600 Subject: luaI_deepcopy strip_gc --- src/lua.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/lua.c') diff --git a/src/lua.c b/src/lua.c index f0240b3..45ceeb9 100644 --- a/src/lua.c +++ b/src/lua.c @@ -287,6 +287,12 @@ void luaI_deepcopy(lua_State* src, lua_State* dest, enum deep_copy_flags flags){ lua_setmetatable(dest, tidx); lua_settop(dest, tidx); + + if(flags & STRIP_GC){ + int sidx = lua_gettop(src); + lua_getmetatable(src, sidx); + luaI_tsetnil(src, sidx, "__gc"); + } } lua_settop(src, old_top); } -- cgit v1.2.3