InvertedShellWrapper won't pump end of stream
---------------------------------------------
Key: SSHD-125
URL: https://issues.apache.org/jira/browse/SSHD-125
Project: MINA SSHD
Issue Type: Bug
Affects Versions: 0.5.0
Reporter: René Treffer
The "pumpStreams" method (
http://svn.apache.org/viewvc/mina/sshd/trunk/sshd-core/src/main/java/org/apache/sshd/server/shell/InvertedShellWrapper.java#l89
) of InvertedShellWrapper has a loop that won't collect the last output of a
process.
The faulty event sequence looks like this:
1. process alive? -> yes
2. Anything to pump? -> no
3. Thread.sleep(1)
4. process alive? -> no
5. call exit handler and end pump thread
This will obviously discard any output of the process during step 3 and 4.
The solution would be to pump all pending output before the exit handler gets
called (while (pumpStream(shellOut, out, buffer) || pumpStream(shellErr, err,
buffer)) {}).
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira