summaryrefslogtreecommitdiffhomepage
path: root/src/kernel.c
diff options
context:
space:
mode:
authordearblue <[email protected]>2021-01-10 10:20:01 +0900
committerdearblue <[email protected]>2021-01-10 13:23:28 +0900
commit58e94427377952b0953bcdf2d544c62b0fefd4a6 (patch)
treeca0092df0d3e983166b0753a463663b583a6d414 /src/kernel.c
parentb210cfa34ea9e0d288d35b3c9b78c98d33f25dae (diff)
downloadmruby-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.c3
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);