summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormame <mame@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-10-29 16:30:02 +0000
committermame <mame@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-10-29 16:30:02 +0000
commit213be82796874e5dc924f611b27989e405c3b4a4 (patch)
tree1df755720db4398cfd707909428f7298a54d683b
parentd23702f1f1176bda80f1848c099138e47e39d2fd (diff)
* string.c (rb_str_cmp): fix condition which always returned true
because ENCODING_GET returns unsigned long. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@20043 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--string.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index e10aead0e9..b4ccc5d515 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Thu Oct 30 01:24:55 2008 Yusuke Endoh <mame@tsg.ne.jp>
+
+ * string.c (rb_str_cmp): fix condition which always returned true
+ because ENCODING_GET returns unsigned long.
+
Thu Oct 30 01:10:32 2008 Yusuke Endoh <mame@tsg.ne.jp>
* test/ruby/test_array (test_permutation): add a test that replaces
diff --git a/string.c b/string.c
index 16382b5304..ea7b04f335 100644
--- a/string.c
+++ b/string.c
@@ -2073,7 +2073,7 @@ rb_str_cmp(VALUE str1, VALUE str2)
if (retval == 0) {
if (RSTRING_LEN(str1) == RSTRING_LEN(str2)) {
if (!rb_str_comparable(str1, str2)) {
- if (ENCODING_GET(str1) - ENCODING_GET(str2) > 0)
+ if (ENCODING_GET(str1) > ENCODING_GET(str2))
return 1;
return -1;
}