From e3922318bd2679de7930ba7c520d58961340e006 Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Sat, 11 Mar 2017 15:18:41 +0900 Subject: Check return value from snprintf(); ref #3498 --- mrbgems/mruby-sprintf/src/sprintf.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'mrbgems/mruby-sprintf') diff --git a/mrbgems/mruby-sprintf/src/sprintf.c b/mrbgems/mruby-sprintf/src/sprintf.c index d02a2aa4d..a3e20d83a 100644 --- a/mrbgems/mruby-sprintf/src/sprintf.c +++ b/mrbgems/mruby-sprintf/src/sprintf.c @@ -1087,6 +1087,9 @@ retry: CHECK(need); n = snprintf(&buf[blen], need, fbuf, fval); + if (n < 0) { + mrb_raise(mrb, E_RUNTIME_ERROR, "formatting error"); + } blen += n; } break; -- cgit v1.2.3