summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2014-06-18 15:49:22 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2014-06-23 20:06:17 +0900
commitac0addd98ff93334aca192b1eb67d640cefcc5d1 (patch)
tree4e03e5345024b756bd3ea6cdad8fbbd00b3ae00a
parentbaca365caa00f805fe813844f203c1c542ea6677 (diff)
downloadmruby-ac0addd98ff93334aca192b1eb67d640cefcc5d1.tar.gz
mruby-ac0addd98ff93334aca192b1eb67d640cefcc5d1.zip
refacor mrb_open_core() to reduce a local variable
-rw-r--r--src/state.c23
1 files changed, 8 insertions, 15 deletions
diff --git a/src/state.c b/src/state.c
index ca776b36d..8857d3294 100644
--- a/src/state.c
+++ b/src/state.c
@@ -22,8 +22,8 @@ inspect_main(mrb_state *mrb, mrb_value mod)
return mrb_str_new_lit(mrb, "main");
}
-static mrb_state*
-mrb_open_common(mrb_allocf f, void *ud, mrb_bool with_gems)
+mrb_state*
+mrb_open_core(mrb_allocf f, void *ud)
{
static const mrb_state mrb_state_zero = { 0 };
static const struct mrb_context mrb_context_zero = { 0 };
@@ -54,13 +54,6 @@ mrb_open_common(mrb_allocf f, void *ud, mrb_bool with_gems)
mrb_init_core(mrb);
-#ifndef DISABLE_GEMS
- if (with_gems) {
- mrb_init_mrbgems(mrb);
- mrb_gc_arena_restore(mrb, 0);
- }
-#endif
-
return mrb;
}
@@ -119,13 +112,13 @@ mrb_open(void)
mrb_state*
mrb_open_allocf(mrb_allocf f, void *ud)
{
- return mrb_open_common(f, ud, TRUE);
-}
+ mrb_state *mrb = mrb_open_core(f, ud);
-mrb_state*
-mrb_open_core(mrb_allocf f, void *ud)
-{
- return mrb_open_common(f, ud, FALSE);
+#ifndef DISABLE_GEMS
+ mrb_init_mrbgems(mrb);
+ mrb_gc_arena_restore(mrb, 0);
+#endif
+ return mrb;
}
void mrb_free_symtbl(mrb_state *mrb);