On 2012-08-09 02:59, Rolf Eike Beer wrote:
Now we have the following situation in case the program has exited (if not the
behavior is unchanged):

-we read in one line, if it is empty we break. What happens if the first line
of output is empty and correct output comes later?
That's why I originally went for readAll.


-the line is not empty, we continue (new check)

-we check if the line is empty (old check)

So, what now?

I would suggest the following:

-readAll()
-if empty, break
-find a linebreak, if we have one: unreadLine for everything beyond it, cut
the input line we have
-move the readLine() and the isEmpty() of the old code together in the else
(i.e. pidExited == NotExited).

Eike

Isn't that what effectively what the original revision does (dropping the unread since readLine after readAll is safe)?

If the program has exited:
- Read all output
- If no output is found, break
- If output is found, continue along the original code

The purpose of this change is only to break if the program has exited without output.

All the best,
Michael

Reply via email to