diff options
| author | dearblue <[email protected]> | 2021-01-10 10:20:01 +0900 |
|---|---|---|
| committer | dearblue <[email protected]> | 2021-01-10 13:23:28 +0900 |
| commit | 58e94427377952b0953bcdf2d544c62b0fefd4a6 (patch) | |
| tree | ca0092df0d3e983166b0753a463663b583a6d414 /src/kernel.c | |
| parent | b210cfa34ea9e0d288d35b3c9b78c98d33f25dae (diff) | |
| download | mruby-58e94427377952b0953bcdf2d544c62b0fefd4a6.tar.gz mruby-58e94427377952b0953bcdf2d544c62b0fefd4a6.zip | |
Unified `target_class` and `env` of `mrb_callinfo`
If there is `env`, `env->c` means `target_class`.
Diffstat (limited to 'src/kernel.c')
| -rw-r--r-- | src/kernel.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/src/kernel.c b/src/kernel.c index b98e52c42..f14f6af7c 100644 --- a/src/kernel.c +++ b/src/kernel.c @@ -176,8 +176,7 @@ mrb_f_block_given_p_m(mrb_state *mrb, mrb_value self) if (bidx < 0) return mrb_false_value(); bp = &e->stack[bidx]; } - else if (ci->env) { - e = ci->env; + else if ((e = mrb_vm_ci_env(ci)) != NULL) { /* top-level does not have block slot (always false) */ if (e->stack == mrb->c->stbase) return mrb_false_value(); bidx = env_bidx(e); |
