Thread.sleep() fails to clear the interrupted status flag when it is interrupted. Furthermore, if the interrupt occurs before entering the sleep, the thread is left in an inconsistent state.
The included patch fixes both problems.
STATEMENT OF ORIGIN FOR A SINGLE CONTRIBUTOR
I, Yuval Yarom:
(a) represent that either:
(i) I am the only author and owner of the contributed software
(described as/entitled fixing runtime package isolation),
which was neither derived nor copied from any other software,
(ii) that any exception to (i) is software which was obtained under the
CPL (Common Public License),
(b) hereby agree to license this contributed software under the CPL.