From 12f256d42ec080c4bc69e08636ce3b40b792eae7 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Thu, 7 Nov 2002 04:38:21 +0000 Subject: [PATCH] re PR libgcj/8481 (java.Random.nextInt(int) may return negative) From svens@it.uu.se. For PR libgcj/8481. * java/util/Random.java (nextInt(int)): Only use 31 bits. From-SVN: r58876 --- libjava/ChangeLog | 5 +++++ libjava/java/util/Random.java | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 6a6adf974bf..9dad8792e09 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,8 @@ +2002-11-06 Tom Tromey + + From svens@it.uu.se. For PR libgcj/8481. + * java/util/Random.java (nextInt(int)): Only use 31 bits. + 2002-11-06 Tom Tromey * jni.cc (array_from_valist): Assume that jlong won't be diff --git a/libjava/java/util/Random.java b/libjava/java/util/Random.java index 500a02d3765..6e7d8cf2491 100644 --- a/libjava/java/util/Random.java +++ b/libjava/java/util/Random.java @@ -259,7 +259,7 @@ public int nextInt(int n) int bits, val; do { - bits = next(32); + bits = next(31); val = bits % n; } while(bits - val + (n-1) < 0); @@ -296,7 +296,7 @@ public int nextInt(int n) int bits, val; do { - bits = next(32); + bits = next(31); val = bits % n; } while (bits - val + (n - 1) < 0); -- 2.30.2