mirror of https://github.com/sbt/sbt.git
When a thin client (sbtn) is killed while the server is waiting for stdin input, the server gets stuck forever on `inputBuffer.take` because no one signals that the client is gone. Fix by adding a poison pill (`-1` / EOF) to the input buffer during shutdown so the blocked `take` call returns immediately. Also add an early-exit check when the channel is already stopped, and handle `InterruptedException` in `inputStream.read()`. Fixes sbt/sbt#6841 |
||
|---|---|---|
| .. | ||
| src | ||
| NOTICE | ||