diff --git a/mrbgems/mruby-eval/src/eval.c b/mrbgems/mruby-eval/src/eval.c index e97e580fa..7b83eb624 100644 --- a/mrbgems/mruby-eval/src/eval.c +++ b/mrbgems/mruby-eval/src/eval.c @@ -12,7 +12,11 @@ get_closure_irep(mrb_state *mrb, int level) struct RProc *proc; if (level == 0) { - return mrb->c->ci[-1].proc->body.irep; + proc = mrb->c->ci[-1].proc; + if (MRB_PROC_CFUNC_P(proc)) { + return NULL; + } + return proc->body.irep; } while (--level) {