]> git.ipfire.org Git - thirdparty/LuaJIT.git/commitdiff
Fix recording of BC_VARG.
authorMike Pall <mike>
Mon, 13 Jan 2025 15:19:57 +0000 (16:19 +0100)
committerMike Pall <mike>
Mon, 13 Jan 2025 15:19:57 +0000 (16:19 +0100)
Reported by Bachir Bendrissou.

src/lj_record.c

index 9e0f3501c118af0c24b415911c7af5fe47276c05..20a7ea36e1692ed08848b4ac399c64df568e93b1 100644 (file)
@@ -1570,7 +1570,7 @@ static void rec_varg(jit_State *J, BCReg dst, ptrdiff_t nresults)
        J->maxslot = dst + (BCReg)nresults;
       }
     } else if (select_detect(J)) {  /* y = select(x, ...) */
-      TRef tridx = J->base[dst-1];
+      TRef tridx = getslot(J, dst-1);
       TRef tr = TREF_NIL;
       ptrdiff_t idx = lj_ffrecord_select_mode(J, tridx, &J->L->base[dst-1]);
       if (idx < 0) goto nyivarg;