aboutsummaryrefslogtreecommitdiff
path: root/lapi.c
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>2025-03-14 12:37:19 -0300
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>2025-03-14 12:37:19 -0300
commitc2dc6e8e947ed0c7b18d452592f722f56ee1f96a (patch)
tree2d39698d94992e158199db58d53693496250d2b6 /lapi.c
parent22974326ca0d4f893849ce722cc1d65b3e228f42 (diff)
downloadlua-c2dc6e8e947ed0c7b18d452592f722f56ee1f96a.tar.gz
lua-c2dc6e8e947ed0c7b18d452592f722f56ee1f96a.tar.bz2
lua-c2dc6e8e947ed0c7b18d452592f722f56ee1f96a.zip
Missing GC barrier in 'luaV_finishset'
Diffstat (limited to 'lapi.c')
-rw-r--r--lapi.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/lapi.c b/lapi.c
index eab12cac..f59430a7 100644
--- a/lapi.c
+++ b/lapi.c
@@ -888,9 +888,8 @@ LUA_API void lua_settable (lua_State *L, int idx) {
888 api_checkpop(L, 2); 888 api_checkpop(L, 2);
889 t = index2value(L, idx); 889 t = index2value(L, idx);
890 luaV_fastset(t, s2v(L->top.p - 2), s2v(L->top.p - 1), hres, luaH_pset); 890 luaV_fastset(t, s2v(L->top.p - 2), s2v(L->top.p - 1), hres, luaH_pset);
891 if (hres == HOK) { 891 if (hres == HOK)
892 luaV_finishfastset(L, t, s2v(L->top.p - 1)); 892 luaV_finishfastset(L, t, s2v(L->top.p - 1));
893 }
894 else 893 else
895 luaV_finishset(L, t, s2v(L->top.p - 2), s2v(L->top.p - 1), hres); 894 luaV_finishset(L, t, s2v(L->top.p - 2), s2v(L->top.p - 1), hres);
896 L->top.p -= 2; /* pop index and value */ 895 L->top.p -= 2; /* pop index and value */