From 4f8763ad0b84f25ed2d55bd156a985da5812c917 Mon Sep 17 00:00:00 2001 From: Vicki Pfau Date: Tue, 31 Jan 2023 17:07:03 -0800 Subject: [PATCH] Script: Fix leaking tables passed from Lua --- src/script/engines/lua.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/script/engines/lua.c b/src/script/engines/lua.c index 37327ee54..601e96b4d 100644 --- a/src/script/engines/lua.c +++ b/src/script/engines/lua.c @@ -591,6 +591,7 @@ struct mScriptValue* _luaCoerceTable(struct mScriptEngineContextLua* luaContext) size_t len = mScriptTableSize(table); if (!isList || !len) { + mScriptContextFillPool(luaContext->d.context, table); return table; } @@ -600,6 +601,7 @@ struct mScriptValue* _luaCoerceTable(struct mScriptEngineContextLua* luaContext) struct mScriptValue* value = mScriptTableLookup(table, &mSCRIPT_MAKE_S64(i)); if (!value) { mScriptValueDeref(list); + mScriptContextFillPool(luaContext->d.context, table); return table; } mScriptValueWrap(value, mScriptListAppend(list->value.list));