Fix error handling for mrb_open_allocf().

When DISABLE_GEMS is not defined and
a return value of mrb_open_core() is NULL,
mrb_open_allocf() may cause SEGV.
This commit is contained in:
Tatsuhiko Kubo
2014-08-20 05:15:21 +09:00
parent d49f8517a6
commit 53a7549e1c
+4
View File
@@ -110,6 +110,10 @@ mrb_open_allocf(mrb_allocf f, void *ud)
{
mrb_state *mrb = mrb_open_core(f, ud);
if (mrb == NULL) {
return NULL;
}
#ifndef DISABLE_GEMS
mrb_init_mrbgems(mrb);
mrb_gc_arena_restore(mrb, 0);