summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoryugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-06-20 09:07:02 +0000
committeryugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-06-20 09:07:02 +0000
commit67a3f2eebce948c695ae37ee7ebd1a5f2dd9f7a2 (patch)
tree4af2a2f6516deb2d0026ebe36c66ed34c0bfd1c6
parent509f805ace7a3118446a2f519b5f81802d48f450 (diff)
merges r23562 and r23564 from trunk into ruby_1_9_1.
-- * 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. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@23761 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog7
-rw-r--r--string.c2
-rw-r--r--test/ruby/test_string.rb4
-rw-r--r--version.h2
4 files changed, 14 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 69885b4c88..402441949b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+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 05:32:19 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/cgi/core.rb (CGI::HTTP_STATUS): typo fixed. a patch from
diff --git a/string.c b/string.c
index 8e264d53aa..3026de17d8 100644
--- a/string.c
+++ b/string.c
@@ -6645,6 +6645,7 @@ rb_str_partition(VALUE str, VALUE sep)
rb_raise(rb_eTypeError, "type mismatch: %s given",
rb_obj_classname(sep));
}
+ sep = tmp;
pos = rb_str_index(str, sep, 0);
}
if (pos < 0) {
@@ -6692,6 +6693,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 f6f3dd76b2..bf0ed6a830 100644
--- a/test/ruby/test_string.rb
+++ b/test/ruby/test_string.rb
@@ -1699,12 +1699,16 @@ class TestString < Test::Unit::TestCase
assert_equal(%w(he l lo), "hello".partition(/l/))
assert_equal(%w(he l lo), "hello".partition("l"))
assert_raise(TypeError) { "hello".partition(1) }
+ def (hyphen = Object.new).to_str; "-"; end
+ assert_equal(%w(foo - bar), "foo-bar".partition(hyphen), '[ruby-core:23540]')
end
def test_rpartition
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
diff --git a/version.h b/version.h
index 53715337a7..cb30b38a2d 100644
--- a/version.h
+++ b/version.h
@@ -1,6 +1,6 @@
#define RUBY_VERSION "1.9.1"
#define RUBY_RELEASE_DATE "2009-05-22"
-#define RUBY_PATCHLEVEL 159
+#define RUBY_PATCHLEVEL 160
#define RUBY_VERSION_MAJOR 1
#define RUBY_VERSION_MINOR 9
#define RUBY_VERSION_TEENY 1