The ShellScaffold thread that feeds commands to jdb always sends a 'quit' command at the end, and jdb doesn't read any more commands after receiving a 'quit'.
So, it is hard to see how jdb could get an EOF reading the next command.
I suppose one possibility is that the feeder thread does this
maybe there is some situation where the exit could cause the pipe to close
before jdb has read the quit command.
An associated problem is that if jdb does get an EOF while reading a command,
it terminates the main thread but leaves other threads running , ie,
the event handler, and the threads that read the stdout/stderr from the debuggee.