diff options
author | Takashi Kokubun <takashikkbn@gmail.com> | 2020-12-19 00:27:42 -0800 |
---|---|---|
committer | Takashi Kokubun <takashikkbn@gmail.com> | 2020-12-19 00:27:44 -0800 |
commit | 52b1716c78a7ad9daa317e3eb43f744744b9f736 (patch) | |
tree | 1adac4955d206c2ac47faa6cfd1357dae1b562a8 | |
parent | 8ec8f37566902c0167f736d345bb5c8cca6016d3 (diff) |
Fix vm_search_invokeblock
call_ needs to be vm_invokeblock_i, and flags is also not empty.
-rw-r--r-- | vm_insnhelper.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/vm_insnhelper.c b/vm_insnhelper.c index b62ab170d3..73d90e6625 100644 --- a/vm_insnhelper.c +++ b/vm_insnhelper.c @@ -4438,7 +4438,14 @@ vm_search_method_wrap(const struct rb_control_frame_struct *reg_cfp, struct rb_c static const struct rb_callcache * vm_search_invokeblock(const struct rb_control_frame_struct *reg_cfp, struct rb_call_data *cd, VALUE recv) { - return rb_vm_empty_cc(); + static const struct rb_callcache cc = { + .flags = T_IMEMO | (imemo_callcache << FL_USHIFT) | VM_CALLCACHE_UNMARKABLE, + .klass = 0, + .cme_ = 0, + .call_ = vm_invokeblock_i, + .aux_ = {0}, + }; + return &cc; } # define mexp_search_method vm_search_method_wrap |