diff options
author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2019-08-21 12:19:47 -0300 |
---|---|---|
committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2019-08-21 12:19:47 -0300 |
commit | 3df5624ff432b340fe122988fe6d025ad3217946 (patch) | |
tree | 2abdd6d7de1245a2dcaf887c9ca28d3f259e7a49 /lvm.c | |
parent | be78aeae4c429d7d68af3a3e1b0cf8e52fcff160 (diff) | |
download | lua-3df5624ff432b340fe122988fe6d025ad3217946.tar.gz lua-3df5624ff432b340fe122988fe6d025ad3217946.tar.bz2 lua-3df5624ff432b340fe122988fe6d025ad3217946.zip |
Fixed bug when yiedling inside OP_ADDK opcode
The family of opcodes OP_ADDK (arithmetic operators with K constant)
were not being handled in 'luaV_finishOp', which completes their
task after an yield.
Diffstat (limited to '')
-rw-r--r-- | lvm.c | 3 |
1 files changed, 3 insertions, 0 deletions
@@ -720,6 +720,9 @@ void luaV_finishOp (lua_State *L) { | |||
720 | case OP_ADDI: case OP_SUBI: | 720 | case OP_ADDI: case OP_SUBI: |
721 | case OP_MULI: case OP_DIVI: case OP_IDIVI: | 721 | case OP_MULI: case OP_DIVI: case OP_IDIVI: |
722 | case OP_MODI: case OP_POWI: | 722 | case OP_MODI: case OP_POWI: |
723 | case OP_ADDK: case OP_SUBK: | ||
724 | case OP_MULK: case OP_DIVK: case OP_IDIVK: | ||
725 | case OP_MODK: case OP_POWK: | ||
723 | case OP_ADD: case OP_SUB: | 726 | case OP_ADD: case OP_SUB: |
724 | case OP_MUL: case OP_DIV: case OP_IDIV: | 727 | case OP_MUL: case OP_DIV: case OP_IDIV: |
725 | case OP_BANDK: case OP_BORK: case OP_BXORK: | 728 | case OP_BANDK: case OP_BORK: case OP_BXORK: |