aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libjava/ChangeLog4
-rw-r--r--libjava/java/math/BigInteger.java4
2 files changed, 7 insertions, 1 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index 403a85e..2049e01 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 55e3050..69e7f68 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)