diff --git a/main/filesystem-invariants-tests/src/test/java/org/cryptomator/filesystem/invariants/ConcurrencyTests.java b/main/filesystem-invariants-tests/src/test/java/org/cryptomator/filesystem/invariants/ConcurrencyTests.java index 4389c6fa5..c924f81d8 100644 --- a/main/filesystem-invariants-tests/src/test/java/org/cryptomator/filesystem/invariants/ConcurrencyTests.java +++ b/main/filesystem-invariants-tests/src/test/java/org/cryptomator/filesystem/invariants/ConcurrencyTests.java @@ -89,17 +89,14 @@ public class ConcurrencyTests { private final SynchronousQueue handoverQueue = new SynchronousQueue<>(); private final Thread thread = new Thread(() -> { - Runnable task; - while (true) { - try { - task = handoverQueue.take(); - } catch (InterruptedException e) { - return; + try { + Runnable task; + while ((task = handoverQueue.take()) != TERMINATION_HINT) { + task.run(); } - if (task == TERMINATION_HINT) { - break; - } - task.run(); + } catch (InterruptedException e) { + Thread.currentThread().interrupt(); + return; } });