From 3db91fb06b06fc3dad0451ae4851527bb101631d Mon Sep 17 00:00:00 2001 From: matz Date: Fri, 21 Feb 2003 03:52:27 +0000 Subject: * string.c (rb_str_cmp_m): two small bugs fixed. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@3521 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- string.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'string.c') diff --git a/string.c b/string.c index 7a21e5c8e..acdfe4043 100644 --- a/string.c +++ b/string.c @@ -816,10 +816,11 @@ rb_str_cmp_m(str1, str2) else { VALUE tmp = rb_funcall(str2, rb_intern("<=>"), 1, str1); + if (NIL_P(tmp)) return Qnil; if (!FIXNUM_P(tmp)) { - return rb_funcall(LONG2FIX(0), '-', tmp); + return rb_funcall(LONG2FIX(0), '-', 1, tmp); } - result = FIX2LONG(tmp); + result = -FIX2LONG(tmp); } } else { -- cgit