From a6565d21fa56756cf4ecb1aec3da38d4cd23b9f1 Mon Sep 17 00:00:00 2001 From: Mike Pall Date: Thu, 28 Jan 2010 04:02:32 +0100 Subject: [PATCH] Fix recording of metamethod result adjustment. --- src/lj_record.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lj_record.c b/src/lj_record.c index 7b2e977e..b7832752 100644 --- a/src/lj_record.c +++ b/src/lj_record.c @@ -1539,7 +1539,7 @@ static void rec_ret(jit_State *J, BCReg rbase, int gotresults) if (cont == lj_cont_ra) { /* Copy result to destination slot. */ BCReg dst = bc_a(*J->pc); - J->base[dst] = res[0]; + J->base[dst] = gotresults ? res[0] : TREF_NIL; if (dst > J->maxslot) J->maxslot = dst+1; } else if (cont == lj_cont_nop) { /* Nothing to do here. */