diff options
Diffstat (limited to 'vm_args.c')
-rw-r--r-- | vm_args.c | 7 |
1 files changed, 4 insertions, 3 deletions
@@ -762,7 +762,8 @@ vm_caller_setup_arg_kw(rb_control_frame_t *cfp, rb_call_info_t *ci) } while (0) static void -vm_caller_setup_arg_block(const rb_thread_t *th, rb_control_frame_t *reg_cfp, rb_call_info_t *ci, const int is_super) +vm_caller_setup_arg_block(const rb_thread_t *th, rb_control_frame_t *reg_cfp, rb_call_info_t *ci, + rb_iseq_t *blockiseq, const int is_super) { if (ci->flag & VM_CALL_ARGS_BLOCKARG) { rb_proc_t *po; @@ -791,9 +792,9 @@ vm_caller_setup_arg_block(const rb_thread_t *th, rb_control_frame_t *reg_cfp, rb ci->blockptr = NULL; } } - else if (ci->blockiseq != 0) { /* likely */ + else if (blockiseq != 0) { /* likely */ ci->blockptr = RUBY_VM_GET_BLOCK_PTR_IN_CFP(reg_cfp); - ci->blockptr->iseq = ci->blockiseq; + ci->blockptr->iseq = blockiseq; ci->blockptr->proc = 0; } else { |