Commit e1b37c34 authored by Gerd Moellmann's avatar Gerd Moellmann

(wait_reading_process_input): When trying to suck

input from one process, for accept-process-output,
exit that loop if we get EAGAIN or EWOULDBLOCK.
parent 78cc5c64
......@@ -2541,15 +2541,26 @@ wait_reading_process_input (time_limit, microsecs, read_kbd, do_display)
XSETPROCESS (proc, wait_proc);
/* Read data from the process, until we exhaust it. */
while (XINT (wait_proc->infd) >= 0
&& (nread
= read_process_output (proc, XINT (wait_proc->infd))))
while (XINT (wait_proc->infd) >= 0)
{
nread = read_process_output (proc, XINT (wait_proc->infd));
if (nread == 0)
break;
if (0 < nread)
total_nread += nread;
#ifdef EIO
else if (nread == -1 && EIO == errno)
break;
#endif
#ifdef EAGAIN
else if (nread == -1 && EAGAIN == errno)
break;
#endif
#ifdef EWOULDBLOCK
else if (nread == -1 && EWOULDBLOCK == errno)
break;
#endif
}
if (total_nread > 0 && do_display)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment