From 1ca5143193379d73a01c2ccdabe0d280cf73a47a Mon Sep 17 00:00:00 2001 From: nobu Date: Thu, 9 Oct 2008 18:41:35 +0000 Subject: * sprintf.c (rb_str_format): check if codepoint for %c is valid. [ruby-dev:36691] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@19737 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ sprintf.c | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index b8faf5513..038922dff 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Fri Oct 10 03:41:31 2008 Nobuyoshi Nakada + + * sprintf.c (rb_str_format): check if codepoint for %c is valid. + [ruby-dev:36691] + Fri Oct 10 01:55:48 2008 Nobuyoshi Nakada * encoding.c (enc_names): minor improvement. diff --git a/sprintf.c b/sprintf.c index 0085cfc17..34152b170 100644 --- a/sprintf.c +++ b/sprintf.c @@ -618,7 +618,7 @@ rb_str_format(int argc, const VALUE *argv, VALUE fmt) c = NUM2INT(val); } n = rb_enc_codelen(c, enc); - if (n == 0) { + if (n <= 0) { rb_raise(rb_eArgError, "invalid character"); } if (!(flags & FWIDTH)) { -- cgit