diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2014-10-19 19:39:02 +0900 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2014-10-19 19:39:02 +0900 |
| commit | 4fd28deff9a8d1c40936aa27736222eeb9f00f07 (patch) | |
| tree | e1eb4ff352984171031e1f1746b03f3e460978a9 /mrbgems/mruby-kernel-ext | |
| parent | c6669a328d2747abfbc5e849d8dce9fcd9150792 (diff) | |
| download | mruby-4fd28deff9a8d1c40936aa27736222eeb9f00f07.tar.gz mruby-4fd28deff9a8d1c40936aa27736222eeb9f00f07.zip | |
refactoring C part of #2611
Diffstat (limited to 'mrbgems/mruby-kernel-ext')
| -rw-r--r-- | mrbgems/mruby-kernel-ext/src/kernel.c | 16 |
1 files changed, 5 insertions, 11 deletions
diff --git a/mrbgems/mruby-kernel-ext/src/kernel.c b/mrbgems/mruby-kernel-ext/src/kernel.c index c293f5e8e..fac945ea5 100644 --- a/mrbgems/mruby-kernel-ext/src/kernel.c +++ b/mrbgems/mruby-kernel-ext/src/kernel.c @@ -37,21 +37,15 @@ mrb_f_method(mrb_state *mrb, mrb_value self) static mrb_value mrb_f_array(mrb_state *mrb, mrb_value self) { - mrb_value argv, tmp; - - mrb_get_args(mrb, "o", &argv); - tmp = mrb_check_array_type(mrb, argv); + mrb_value arg, tmp; + mrb_get_args(mrb, "o", &arg); + tmp = mrb_check_convert_type(mrb, arg, MRB_TT_ARRAY, "Array", "to_ary"); if (mrb_nil_p(tmp)) { - tmp = mrb_check_convert_type(mrb, argv, MRB_TT_ARRAY, "Array", "to_a"); + tmp = mrb_check_convert_type(mrb, arg, MRB_TT_ARRAY, "Array", "to_a"); } if (mrb_nil_p(tmp)) { - struct RArray *a; - - tmp = mrb_ary_new_capa(mrb, 1); - a = mrb_ary_ptr(tmp); - a->ptr[0] = argv; - a->len = 1; + tmp = mrb_ary_new_from_values(mrb, 1, &arg); } return tmp; |
