diff --git a/vm_insnhelper.c b/vm_insnhelper.c index 1b0dbde832..95612453e7 100644 --- a/vm_insnhelper.c +++ b/vm_insnhelper.c @@ -3636,12 +3636,12 @@ vm_sendish( frame may have stack values in the local variables and the cancelling the caller frame will purge them. But directly calling mjit_exec is faster... */ - if (GET_ISEQ()->body->catch_except_p) { - VM_ENV_FLAGS_SET(GET_EP(), VM_FRAME_FLAG_FINISH); + if (ec->cfp->iseq->body->catch_except_p) { + VM_ENV_FLAGS_SET(ec->cfp->ep, VM_FRAME_FLAG_FINISH); return vm_exec(ec, true); } else if ((val = mjit_exec(ec)) == Qundef) { - VM_ENV_FLAGS_SET(GET_EP(), VM_FRAME_FLAG_FINISH); + VM_ENV_FLAGS_SET(ec->cfp->ep, VM_FRAME_FLAG_FINISH); return vm_exec(ec, false); } else {