diff options
author | Alexey Ushakov <alexey.v.ushakov@gmail.com> | 2020-01-20 12:26:23 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-01-20 12:26:23 +0300 |
commit | 58d685ee3bb0e782891f47572a1c73d68b6e0b13 (patch) | |
tree | 185fd6e03f18f8596cf10f16f73d0076768f34b3 /src/windows/classes/java/lang/ProcessImpl.java | |
parent | 9939e9d0b1e8c9641857fb17b7b61f85683af257 (diff) | |
parent | 04084b619aea80229624dbac6c5b8e16db4a32e3 (diff) | |
download | jdk8u_jdk-58d685ee3bb0e782891f47572a1c73d68b6e0b13.tar.gz |
Merge pull request #31 from bell-sw/update_8u242jb8u242-b1640
jdk8u242 update
Diffstat (limited to 'src/windows/classes/java/lang/ProcessImpl.java')
-rw-r--r-- | src/windows/classes/java/lang/ProcessImpl.java | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/windows/classes/java/lang/ProcessImpl.java b/src/windows/classes/java/lang/ProcessImpl.java index 37c3237547..1970260e57 100644 --- a/src/windows/classes/java/lang/ProcessImpl.java +++ b/src/windows/classes/java/lang/ProcessImpl.java @@ -520,11 +520,15 @@ final class ProcessImpl extends Process { if (timeout <= 0) return false; long remainingNanos = unit.toNanos(timeout); - long deadline = System.nanoTime() + remainingNanos ; + long deadline = System.nanoTime() + remainingNanos; do { // Round up to next millisecond long msTimeout = TimeUnit.NANOSECONDS.toMillis(remainingNanos + 999_999L); + if (msTimeout < 0) { + // if wraps around then wait a long while + msTimeout = Integer.MAX_VALUE; + } waitForTimeoutInterruptibly(handle, msTimeout); if (Thread.interrupted()) throw new InterruptedException(); @@ -538,7 +542,7 @@ final class ProcessImpl extends Process { } private static native void waitForTimeoutInterruptibly( - long handle, long timeout); + long handle, long timeoutMillis); public void destroy() { terminateProcess(handle); } |