nsk.share.jdi.Debugee.waitingEvent() takes a timeout argument. However, if the 
call to EventQueue.remove() times out and returns null, waitingEvent() just 
keep on retrying. The logic is incorrect for a null result. It should 
immediately throw an exception. The retry path is only meant for filtering out 
other events, and it updates "timeLeft' before retrying to avoid endlessly 
repeating the loop. 

Tested by running all of nsk/jdi locally on linux-x64-debug

-------------

Commit messages:
 - Throw exception when EventQueue.remove() times out

Changes: https://git.openjdk.org/jdk/pull/24839/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=24839&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8355453
  Stats: 4 lines in 1 file changed: 0 ins; 1 del; 3 mod
  Patch: https://git.openjdk.org/jdk/pull/24839.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/24839/head:pull/24839

PR: https://git.openjdk.org/jdk/pull/24839

Reply via email to