From 195d1dd685124edf93735a751f8ec34a7bfe76c0 Mon Sep 17 00:00:00 2001 From: Yukihiro Matsumoto Date: Fri, 15 Jun 2012 14:03:02 +0900 Subject: do not use fixed sized buffer in mrb_bug/mrb_warn; close #287 --- include/mruby.h | 1 - src/error.c | 12 +++++------- 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/include/mruby.h b/include/mruby.h index 25fc96b53..94fb44ad2 100644 --- a/include/mruby.h +++ b/include/mruby.h @@ -428,7 +428,6 @@ int mrb_block_given_p(void); void mrb_raise(mrb_state *mrb, struct RClass *c, const char *fmt, ...); void rb_raise(struct RClass *c, const char *fmt, ...); void mrb_warn(const char *fmt, ...); -void mrb_warning(const char *fmt, ...); void mrb_bug(const char *fmt, ...); #define E_TYPE_ERROR (mrb_class_obj_get(mrb, "TypeError")) diff --git a/src/error.c b/src/error.c index 590fad5a5..3ef08a631 100644 --- a/src/error.c +++ b/src/error.c @@ -229,25 +229,23 @@ void mrb_warn(const char *fmt, ...) { va_list args; - char buf[256]; va_start(args, fmt); - snprintf(buf, 256, "warning: %s", fmt); - printf(buf, args); + printf("warning: "); + vprintf(fmt, args); va_end(args); } - void mrb_bug(const char *fmt, ...) { va_list args; - char buf[256]; va_start(args, fmt); - snprintf(buf, 256, "bug: %s", fmt); - printf(buf, args); + printf("bug: "); + vprintf(fmt, args); va_end(args); + exit(EXIT_FAILURE); } static const char * -- cgit v1.2.3