From c9927b560ec32efc837727eff4b64bb0bb1f58d4 Mon Sep 17 00:00:00 2001 From: Stuart Halloway Date: Fri, 16 Apr 2010 10:35:06 -0400 Subject: division by negative ratio fix per Tristan King --- src/jvm/clojure/lang/Numbers.java | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src') diff --git a/src/jvm/clojure/lang/Numbers.java b/src/jvm/clojure/lang/Numbers.java index 09dc050b..bd4a5150 100644 --- a/src/jvm/clojure/lang/Numbers.java +++ b/src/jvm/clojure/lang/Numbers.java @@ -295,6 +295,8 @@ static public Number divide(BigInteger n, BigInteger d){ d = d.divide(gcd); if(d.equals(BigInteger.ONE)) return reduce(n); + else if(d.equals(BigInteger.ONE.negate())) + return reduce(n.negate()); return new Ratio((d.signum() < 0 ? n.negate() : n), (d.signum() < 0 ? d.negate() : d)); } -- cgit v1.2.3-18-g5258