diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2017-12-05 11:43:12 +0900 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2017-12-05 11:43:12 +0900 |
| commit | 4a99f4949e64cf6232b6bae16734016906d42527 (patch) | |
| tree | 111e264a509de2a2a8f0425f2839188228596504 /src/vm.c | |
| parent | cbb6f29875a7534fc325ef73ca0b1a3b3908c2cb (diff) | |
| download | mruby-4a99f4949e64cf6232b6bae16734016906d42527.tar.gz mruby-4a99f4949e64cf6232b6bae16734016906d42527.zip | |
Need to set `ci->proc` when we have `RProc` structure.
Mentioned in https://qiita.com/bamchoh/items/eabebbbb330cb0e0470a
Diffstat (limited to 'src/vm.c')
| -rw-r--r-- | src/vm.c | 3 |
1 files changed, 3 insertions, 0 deletions
@@ -475,6 +475,9 @@ mrb_funcall_with_block(mrb_state *mrb, mrb_value self, mrb_sym mid, mrb_int argc int ai = mrb_gc_arena_save(mrb); ci->acc = CI_ACC_DIRECT; + if (MRB_METHOD_PROC_P(m)) { + ci->proc = MRB_METHOD_PROC(m); + } val = MRB_METHOD_CFUNC(m)(mrb, self); mrb->c->stack = mrb->c->ci->stackent; cipop(mrb); |
