diff options
author | Mike Pall <mike> | 2010-01-28 04:02:32 +0100 |
---|---|---|
committer | Mike Pall <mike> | 2010-01-28 04:02:32 +0100 |
commit | a6565d21fa56756cf4ecb1aec3da38d4cd23b9f1 (patch) | |
tree | 742d92ed3571176b242666f450448b837d91ab97 /src | |
parent | 725da9224d2d2a0bc0a1b6504b1fb87bf1674611 (diff) | |
download | luajit-a6565d21fa56756cf4ecb1aec3da38d4cd23b9f1.tar.gz luajit-a6565d21fa56756cf4ecb1aec3da38d4cd23b9f1.tar.bz2 luajit-a6565d21fa56756cf4ecb1aec3da38d4cd23b9f1.zip |
Fix recording of metamethod result adjustment.
Diffstat (limited to 'src')
-rw-r--r-- | src/lj_record.c | 2 |
1 files changed, 1 insertions, 1 deletions
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) | |||
1539 | if (cont == lj_cont_ra) { | 1539 | if (cont == lj_cont_ra) { |
1540 | /* Copy result to destination slot. */ | 1540 | /* Copy result to destination slot. */ |
1541 | BCReg dst = bc_a(*J->pc); | 1541 | BCReg dst = bc_a(*J->pc); |
1542 | J->base[dst] = res[0]; | 1542 | J->base[dst] = gotresults ? res[0] : TREF_NIL; |
1543 | if (dst > J->maxslot) J->maxslot = dst+1; | 1543 | if (dst > J->maxslot) J->maxslot = dst+1; |
1544 | } else if (cont == lj_cont_nop) { | 1544 | } else if (cont == lj_cont_nop) { |
1545 | /* Nothing to do here. */ | 1545 | /* Nothing to do here. */ |