mirror of
https://github.com/sbt/sbt.git
synced 2026-10-06 18:14:04 +02:00
**Problem** In the default thin-client mode, writing to System.out or System.err from an interrupted thread throws InterruptedException and clears the interrupt flag. NetworkChannel enqueues output with `put` on unbounded LinkedBlockingQueues, and `put` acquires its lock with lockInterruptibly(). Logging libraries swallow the exception, so the interrupt is silently lost and code relying on it can hang. **Solution** Use `add` instead of `put` on the unbounded queues. They never block, so no other behavior changes. Add regression tests to NetworkChannelSpec. Fixes issue #9845 Generated-by: Claude Opus 5.5