diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2014-06-27 22:10:21 +0900 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2014-06-27 22:10:21 +0900 |
| commit | 4ce0a7653be6b52120a8b12c4cc5abf1bdb25572 (patch) | |
| tree | 4012e0efcdf56ccc238244334321280240f25a74 /src/error.c | |
| parent | 79787df046cc0eaebfce3eea4769981677c768d8 (diff) | |
| download | mruby-4ce0a7653be6b52120a8b12c4cc5abf1bdb25572.tar.gz mruby-4ce0a7653be6b52120a8b12c4cc5abf1bdb25572.zip | |
reduce mrb_funcall in exception allocation
Diffstat (limited to 'src/error.c')
| -rw-r--r-- | src/error.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/error.c b/src/error.c index 5ca013527..2eebdd033 100644 --- a/src/error.c +++ b/src/error.c @@ -20,14 +20,15 @@ mrb_value mrb_exc_new(mrb_state *mrb, struct RClass *c, const char *ptr, long len) { - return mrb_funcall(mrb, mrb_obj_value(c), "new", 1, mrb_str_new(mrb, ptr, len)); + mrb_value arg = mrb_str_new(mrb, ptr, len); + return mrb_obj_new(mrb, c, 1, &arg); } mrb_value mrb_exc_new_str(mrb_state *mrb, struct RClass* c, mrb_value str) { str = mrb_str_to_str(mrb, str); - return mrb_funcall(mrb, mrb_obj_value(c), "new", 1, str); + return mrb_obj_new(mrb, c, 1, &str); } /* |
