diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 403a85ed9ed56261c14249572ac8bb7fc6e1e031..2049e0158ed3387fea8c1b06314044860aade64a 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,7 @@ +2000-03-08 Warren Levy <warrenl@cygnus.com> + + * java/math/BigInteger.java(signum): Handle zero properly. + 2000-03-07 Tom Tromey <tromey@cygnus.com> * All files: Updated copyright information. diff --git a/libjava/java/math/BigInteger.java b/libjava/java/math/BigInteger.java index 55e30509ab28960a125bca0754981c00666301a2..69e7f68506b64963325bd2b2fcfba70faf6820c9 100644 --- a/libjava/java/math/BigInteger.java +++ b/libjava/java/math/BigInteger.java @@ -285,7 +285,9 @@ public class BigInteger extends Number implements Comparable public int signum() { int top = words == null ? ival : words[ival-1]; - return top > 0 ? 1 : top < 0 ? -1 : 0; + if (top == 0 && words == null) + return 0; + return top < 0 ? -1 : 1; } private static int compareTo(BigInteger x, BigInteger y)