From 43f4934e6d6ef14e38baf1f007f2ccc09d2781dc Mon Sep 17 00:00:00 2001 From: Tomoyuki Sahara Date: Fri, 2 Nov 2012 10:48:39 +0900 Subject: printf("%s", NULL) is not safe on some platforms. --- tools/mruby/mruby.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/tools/mruby/mruby.c b/tools/mruby/mruby.c index 07d0da36c..acecc7c8e 100644 --- a/tools/mruby/mruby.c +++ b/tools/mruby/mruby.c @@ -168,7 +168,7 @@ showcallinfo(mrb_state *mrb) { mrb_callinfo *ci; mrb_int ciidx; - const char *filename, *sep; + const char *filename, *method, *sep; int i, line; printf("trace:\n"); @@ -199,11 +199,15 @@ showcallinfo(mrb_state *mrb) else sep = "#"; + method = mrb_sym2name(mrb, ci->mid); + if (method == NULL) + method = "(???)"; + printf("\t[%d] %s:%d:in %s%s%s\n", i, filename, line, mrb_class_name(mrb, ci->proc->target_class), sep, - mrb_sym2name(mrb, ci->mid)); + method); } } -- cgit v1.2.3