From c2dc6e8e947ed0c7b18d452592f722f56ee1f96a Mon Sep 17 00:00:00 2001 From: Roberto Ierusalimschy Date: Fri, 14 Mar 2025 12:37:19 -0300 Subject: Missing GC barrier in 'luaV_finishset' --- lvm.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'lvm.c') diff --git a/lvm.c b/lvm.c index af048d81..f14397d4 100644 --- a/lvm.c +++ b/lvm.c @@ -362,8 +362,10 @@ void luaV_finishset (lua_State *L, const TValue *t, TValue *key, } t = tm; /* else repeat assignment over 'tm' */ luaV_fastset(t, key, val, hres, luaH_pset); - if (hres == HOK) + if (hres == HOK) { + luaV_finishfastset(L, t, val); return; /* done */ + } /* else 'return luaV_finishset(L, t, key, val, slot)' (loop) */ } luaG_runerror(L, "'__newindex' chain too long; possible loop"); -- cgit v1.2.3-55-g6feb