diff options
| -rw-r--r-- | mrbgems/mruby-proc-ext/src/proc.c | 2 | ||||
| -rw-r--r-- | src/backtrace.c | 15 | ||||
| -rw-r--r-- | src/error.c | 2 |
3 files changed, 8 insertions, 11 deletions
diff --git a/mrbgems/mruby-proc-ext/src/proc.c b/mrbgems/mruby-proc-ext/src/proc.c index 1e033cbfb..8c9e300dc 100644 --- a/mrbgems/mruby-proc-ext/src/proc.c +++ b/mrbgems/mruby-proc-ext/src/proc.c @@ -54,7 +54,7 @@ mrb_proc_inspect(mrb_state *mrb, mrb_value self) if (line != -1) { char buf[32]; - snprintf(buf, sizeof(buf), "%"MRB_PRId, line); + snprintf(buf, sizeof(buf), "%" PRId32, line); mrb_str_cat_cstr(mrb, str, buf); } else { diff --git a/src/backtrace.c b/src/backtrace.c index deb3f8469..9d6f9b1a7 100644 --- a/src/backtrace.c +++ b/src/backtrace.c @@ -74,14 +74,13 @@ static void get_backtrace_i(mrb_state *mrb, struct backtrace_location *loc, void *data) { mrb_value ary, str; - int ai; + char buf[32]; + int ai = mrb_gc_arena_save(mrb); - ai = mrb_gc_arena_save(mrb); ary = mrb_obj_value((struct RArray*)data); str = mrb_str_new_cstr(mrb, loc->filename); - mrb_str_cat_lit(mrb, str, ":"); - mrb_str_concat(mrb, str, mrb_fixnum_to_str(mrb, mrb_fixnum_value(loc->lineno), 10)); + snprintf(buf, sizeof(buf), ":%d", loc->lineno); if (loc->method) { mrb_str_cat_lit(mrb, str, ":in "); @@ -399,16 +398,14 @@ mrb_restore_backtrace(mrb_state *mrb) int ai; mrb_backtrace_entry *entry; mrb_value mrb_entry; + char buf[32]; ai = mrb_gc_arena_save(mrb); entry = &(mrb->backtrace.entries[i]); mrb_entry = mrb_str_new_cstr(mrb, entry->filename); - mrb_str_cat_lit(mrb, mrb_entry, ":"); - mrb_str_concat(mrb, mrb_entry, - mrb_fixnum_to_str(mrb, - mrb_fixnum_value(entry->lineno), - 10)); + snprintf(buf, sizeof(buf), ":%d", entry->lineno); + mrb_str_cat_cstr(mrb, mrb_entry, buf); if (entry->method_id != 0) { mrb_str_cat_lit(mrb, mrb_entry, ":in "); diff --git a/src/error.c b/src/error.c index 3ef57f895..2201fc840 100644 --- a/src/error.c +++ b/src/error.c @@ -152,7 +152,7 @@ exc_inspect(mrb_state *mrb, mrb_value exc) char buf[32]; str = mrb_str_dup(mrb, file); - snprintf(buf, sizeof(buf), ":%"MRB_PRId": ", mrb_fixnum(line)); + snprintf(buf, sizeof(buf), ":%" MRB_PRId ": ", mrb_fixnum(line)); mrb_str_cat_cstr(mrb, str, buf); if (append_mesg) { mrb_str_cat_str(mrb, str, mesg); |
