summaryrefslogtreecommitdiffhomepage
path: root/mrbgems/mruby-eval/src/eval.c
diff options
context:
space:
mode:
authorksss <[email protected]>2016-09-06 17:11:18 +0900
committerksss <[email protected]>2016-09-06 17:11:18 +0900
commite66b35c6eefec2cbc94dff3e507f19e6f9720ff6 (patch)
treea3c58adddce2733b9655cc5cea6d8394f15a46c4 /mrbgems/mruby-eval/src/eval.c
parent9040086e927781018dc9b89d0d160dbba4e76297 (diff)
downloadmruby-e66b35c6eefec2cbc94dff3e507f19e6f9720ff6.tar.gz
mruby-e66b35c6eefec2cbc94dff3e507f19e6f9720ff6.zip
Fix SEGV when unshared env
Diffstat (limited to 'mrbgems/mruby-eval/src/eval.c')
-rw-r--r--mrbgems/mruby-eval/src/eval.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/mrbgems/mruby-eval/src/eval.c b/mrbgems/mruby-eval/src/eval.c
index e39d32ab8..26dd728ba 100644
--- a/mrbgems/mruby-eval/src/eval.c
+++ b/mrbgems/mruby-eval/src/eval.c
@@ -26,6 +26,8 @@ get_closure_irep(mrb_state *mrb, int level)
}
if (!e) return NULL;
+ if (!MRB_ENV_STACK_SHARED_P(e)) return NULL;
+
proc = c->cibase[e->cioff].proc;
if (!proc || MRB_PROC_CFUNC_P(proc)) {