diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-05-24 23:06:57 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-05-24 23:06:57 +0000 |
commit | d629684bb91e7ea64508cd24629a44d41ff328dd (patch) | |
tree | af48efbc86c5e387832364372f3d037828795e37 | |
parent | 7102c3b1a1185311c70b53aec3475754cb41ad96 (diff) | |
download | ruby-d629684bb91e7ea64508cd24629a44d41ff328dd.tar.gz |
* string.c (rb_str_rpartition): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23564 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | string.c | 1 | ||||
-rw-r--r-- | test/ruby/test_string.rb | 2 |
3 files changed, 6 insertions, 1 deletions
@@ -1,8 +1,10 @@ -Mon May 25 07:50:05 2009 Nobuyoshi Nakada <nobu@ruby-lang.org> +Mon May 25 08:06:52 2009 Nobuyoshi Nakada <nobu@ruby-lang.org> * string.c (rb_str_partition): should use the converted result. a patch from Marc-Andre Lafortune at [ruby-core:23540]. + * string.c (rb_str_rpartition): ditto. + Mon May 25 06:25:38 2009 Yukihiro Matsumoto <matz@ruby-lang.org> * test/ruby/test_hash.rb (TestHash::test_equal2): recursive hashes @@ -6924,6 +6924,7 @@ rb_str_rpartition(VALUE str, VALUE sep) rb_raise(rb_eTypeError, "type mismatch: %s given", rb_obj_classname(sep)); } + sep = tmp; pos = rb_str_sublen(str, pos); pos = rb_str_rindex(str, sep, pos); } diff --git a/test/ruby/test_string.rb b/test/ruby/test_string.rb index 4a784b18f1..1d65c84c1c 100644 --- a/test/ruby/test_string.rb +++ b/test/ruby/test_string.rb @@ -1712,6 +1712,8 @@ class TestString < Test::Unit::TestCase assert_equal(%w(hel l o), "hello".rpartition(/l/)) assert_equal(%w(hel l o), "hello".rpartition("l")) assert_raise(TypeError) { "hello".rpartition(1) } + def (hyphen = Object.new).to_str; "-"; end + assert_equal(%w(foo - bar), "foo-bar".rpartition(hyphen), '[ruby-core:23540]') end def test_setter |