Bug #5083 » fix-to-check-cfp.patch
vm.c | ||
---|---|---|
{
|
||
rb_thread_t *th = GET_THREAD();
|
||
rb_control_frame_t *cfp = rb_vm_get_ruby_level_next_cfp(th, th->cfp);
|
||
if (cfp == 0) {
|
||
rb_raise(rb_eRuntimeError, "Can't call on top of Fiber or Thread");
|
||
}
|
||
return vm_get_cref(cfp->iseq, cfp->lfp, cfp->dfp);
|
||
}
|
||
... | ... | |
rb_thread_t *th = GET_THREAD();
|
||
rb_control_frame_t *cfp = rb_vm_get_ruby_level_next_cfp(th, th->cfp);
|
||
if (cfp == 0) {
|
||
rb_raise(rb_eRuntimeError, "Can't call on top of Fiber or Thread");
|
||
}
|
||
return vm_get_cbase(cfp->iseq, cfp->lfp, cfp->dfp);
|
||
}
|
||
... | ... | |
rb_control_frame_t *cfp = rb_vm_get_ruby_level_next_cfp(th, th->cfp);
|
||
VALUE proc;
|
||
if (cfp == 0) {
|
||
rb_bug("m_core_set_postexe: unreachable");
|
||
}
|
||
GetISeqPtr(iseqval, blockiseq);
|
||
blockptr = RUBY_VM_GET_BLOCK_PTR_IN_CFP(cfp);
|