RFR 8157318: ThreadedSeedGenerator uses System.currentTimeMillis and stops generating when time is set back
Wang Weijun
weijun.wang at oracle.com
Wed Jun 15 03:12:23 UTC 2016
Please take a review on the patch
diff --git a/src/java.base/share/classes/sun/security/provider/SeedGenerator.java b/src/java.base/share/classes/sun/security/provider/SeedGenerator.java
--- a/src/java.base/share/classes/sun/security/provider/SeedGenerator.java
+++ b/src/java.base/share/classes/sun/security/provider/SeedGenerator.java
@@ -354,8 +354,8 @@
// We wait 250milli quanta, so the minimum wait time
// cannot be under 250milli.
int latch = 0;
- long l = System.currentTimeMillis() + 250;
- while (System.currentTimeMillis() < l) {
+ long l = System.nanoTime() + 250000000;
+ while (System.nanoTime() < l) {
synchronized(this){};
latch++;
}
nanoTime() is for elapsed time and should be used here.
Thanks
Max
More information about the security-dev
mailing list