sbt/internal
Ethan Atkins 82d6a050de Handle ctrl+d in canonical mode
In canonical mode, System.in will return -1 for ctrl+d on an empty line.
The result of this behavior was that if a user entered ctrl+d during run
in a task that was reading from System.in, sbt would end up exiting
whenever the task exited. This happened because the WriteableInputStream
would close itself when it read -1 from the input stream, which it
assumed meant that the underlying input stream itself had been closed.
When the jline reader tried to read from the closed
WriteableInputStream, it would throw an exception and if the line reader
was for the console channel, it would be interpreted as the user had
inputted ctrl+d in the sbt shell which is supposed to exit sbt. This
change fixes that behavior so that sbt can continue reading input after
the run task exits.
2020-10-20 16:57:17 -07:00
..
util-collection Improve sbt build load time by 25% 2020-07-26 19:52:26 -07:00
util-complete load .inputrc file 2020-10-14 17:13:53 +09:00
util-control Kill external processes on sigint 2020-08-23 10:15:07 -07:00
util-interface/src/main/java/xsbti Apply javafmt in sbt project 2020-01-14 14:38:08 -08:00
util-logging Handle ctrl+d in canonical mode 2020-10-20 16:57:17 -07:00
util-logic/src apply -Yno-lub 2019-10-13 23:46:23 -04:00
util-position/src Add util headers 2019-12-08 10:29:22 -08:00
util-relation/src Add util headers 2019-12-08 10:29:22 -08:00
util-scripted/src/main Add internal multi logger implementation 2020-08-09 11:20:34 -07:00