From f70c171f8c8198b54d08d0c09b594a512d4997ae Mon Sep 17 00:00:00 2001 From: matz Date: Mon, 11 Dec 2006 00:45:32 +0000 Subject: [PATCH] * string.c (rb_str_aset): index double decode problem. [ruby-core:09695] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11374 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ string.c | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index b887c09476..514c00e74f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Mon Dec 11 09:36:29 2006 Yukihiro Matsumoto + + * string.c (rb_str_aset): index double decode problem. + [ruby-core:09695] + Sat Dec 9 21:39:24 2006 Nobuyoshi Nakada * eval.c (ruby_cleanup): keep the exception till after END blocks. diff --git a/string.c b/string.c index 8fc5c9836a..1e1fa33ebf 100644 --- a/string.c +++ b/string.c @@ -1811,8 +1811,8 @@ rb_str_aset(VALUE str, VALUE indx, VALUE val) switch (TYPE(indx)) { case T_FIXNUM: - num_index: idx = FIX2LONG(indx); + num_index: if (RSTRING_LEN(str) <= idx) { out_of_range: rb_raise(rb_eIndexError, "index %ld out of string", idx);