From 3a6fd339d54dc9b11a137567d6b1aefe5f3ec53d Mon Sep 17 00:00:00 2001 From: naruse Date: Thu, 8 Jul 2010 08:18:07 +0000 Subject: [PATCH] * string.c (rb_str_conv_enc_opts): fix infinite loop because of ISO-2022-JP conversion with empty string. patched by Brian Buchanan [ruby-core:31107] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28577 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 12 +++++++++--- string.c | 2 +- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index dce4d8c985..2c681978a2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,8 +1,14 @@ +Thu Jul 8 15:47:34 2010 NARUSE, Yui + + * string.c (rb_str_conv_enc_opts): fix infinite loop because + of ISO-2022-JP conversion with empty string. + patched by Brian Buchanan [ruby-core:31107] + Thu Jul 8 08:16:57 2010 Aaron Patterson * ext/psych/lib/psych/visitors/yaml_tree.rb (push): adding version and header emit options. - + * test/psych/test_psych.rb: corresponding test. Thu Jul 8 08:01:03 2010 Aaron Patterson @@ -138,7 +144,7 @@ Sat Jul 3 09:47:26 2010 Aaron Patterson * ext/psych/lib/psych/scalar_scanner.rb(parse_time): add method for parsing times objects from a string. - + * test/psych/test_date_time.rb: tests for dumping DateTime objects. Sat Jul 3 09:13:55 2010 Aaron Patterson @@ -917,7 +923,7 @@ Mon May 31 23:44:22 2010 Hidetoshi NAGAI * ext/tk/stubs.c: dirty hack for frameworks and stubs on MacOS X. - * ext/tk/lib/tk.rb: stop creating a dummy Tcl/Tk interpreter. + * ext/tk/lib/tk.rb: stop creating a dummy Tcl/Tk interpreter. And hide a root window before starting eventloop. (for ruby 1.9) * ext/tk/tcltklib.c: add codes to support Ruby/Tk-Kit (Rubykit). diff --git a/string.c b/string.c index 8cfbb56bdf..1b06370bb7 100644 --- a/string.c +++ b/string.c @@ -513,7 +513,7 @@ rb_str_conv_enc_opts(VALUE str, rb_encoding *from, rb_encoding *to, int ecflags, switch (ret) { case econv_destination_buffer_full: /* destination buffer short */ - len *= 2; + len = len < 2 ? 2 : len * 2; rb_str_resize(newstr, len); goto retry;