From 21ecb3610e0ef5f9f6badf5119b2098d351db773 Mon Sep 17 00:00:00 2001 From: Mike Pall Date: Wed, 19 Aug 2026 18:21:10 +0200 Subject: [PATCH] Fix unpack() recording. Thanks to Appla. #1512 --- src/lj_ffrecord.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/lj_ffrecord.c b/src/lj_ffrecord.c index 697dcde0..20e0455f 100644 --- a/src/lj_ffrecord.c +++ b/src/lj_ffrecord.c @@ -354,10 +354,11 @@ static void LJ_FASTCALL recff_unpack(jit_State *J, RecordFFData *rd) rd->nres = (ptrdiff_t)(len + 1); ix.tab = trtab; ix.val = 0; ix.idxchain = 0; settabV(J->L, &ix.tabv, t); - for (i = start; i <= end; i++) { + for (i = start; ; i++) { ix.key = lj_ir_kint(J, i); setintV(&ix.keyv, i); J->base[i - start] = lj_record_idx(J, &ix); + if (i == end) break; } } else { /* Empty result. */ emitir(IRTGI(IR_LT), trend, trstart);