diff --git a/src/lparser.c b/src/lparser.c index 18a4b5d..b255bec 100644 --- a/src/lparser.c +++ b/src/lparser.c @@ -922,7 +922,7 @@ void ykifyCode(lua_State *L, Proto *f, int num_insts) { loc_pc = GETARG_sJ(i) + pc + 2 - 1; } else if ((GET_OPCODE(i) == OP_FORLOOP) || (GET_OPCODE(i) == OP_TFORLOOP)) { lua_assert(pc - GETARG_Bx(i) + 2 - 1 < pc); - loc_pc = pc; + loc_pc = pc - GETARG_Bx(i) + 2 - 1; } else { continue; }