summaryrefslogtreecommitdiffhomepage
path: root/mrbgems/mruby-rational/mrblib
diff options
context:
space:
mode:
authorKOBAYASHI Shuji <[email protected]>2019-05-19 13:52:18 +0900
committerKOBAYASHI Shuji <[email protected]>2019-05-19 13:52:18 +0900
commita6eb01837b5d18d0a9b6fd5e22ab7d99241a1e2a (patch)
treefdaa632a27a683b09e8d2bac6412cff7b84f79c3 /mrbgems/mruby-rational/mrblib
parent1cdb3ec93c09629dd24cab8a5e8f66ae6d26bf60 (diff)
downloadmruby-a6eb01837b5d18d0a9b6fd5e22ab7d99241a1e2a.tar.gz
mruby-a6eb01837b5d18d0a9b6fd5e22ab7d99241a1e2a.zip
Fix `Rational#<=>(Numeric)`
Reported by Sergey Ukrainskiy: https://github.com/mruby/mruby/commit/f5fb1307b017fb972c12b4ec4b1866d789b0ca09#r33590698
Diffstat (limited to 'mrbgems/mruby-rational/mrblib')
-rw-r--r--mrbgems/mruby-rational/mrblib/rational.rb3
1 files changed, 2 insertions, 1 deletions
diff --git a/mrbgems/mruby-rational/mrblib/rational.rb b/mrbgems/mruby-rational/mrblib/rational.rb
index 19c6da9e7..ad1f3ab0f 100644
--- a/mrbgems/mruby-rational/mrblib/rational.rb
+++ b/mrbgems/mruby-rational/mrblib/rational.rb
@@ -58,11 +58,12 @@ class Rational < Numeric
when Float
return to_f <=> rhs
end
+
case rhs
when Rational
(numerator * rhs.denominator - denominator * rhs.numerator) <=> 0
when Numeric
- return rhs <=> self
+ (rhs <=> self)&.-@
else
nil
end