Subject: Re: bug#29454: wait_reading_process_output duplication

From: Eli Zaretskii <[email-masked]>
Date: Sun, 26 Nov 2017 17:54:00 +0200

> Date: Sun, 26 Nov 2017 10:45:53 +0100
> From: [email-masked] (Charles A. Roelli)
> 
> Looks like these two blocks are duplicated in
> wait_reading_process_output in process.c:
> 
> 5628 #ifdef WINDOWSNT
> 5629 	      /* FIXME: Is this special case still needed?  */
> 5630 	      /* Note that we cannot distinguish between no input
> 5631 		 available now and a closed pipe.
> 5632 		 With luck, a closed pipe will be accompanied by
> 5633 		 subprocess termination and SIGCHLD.  */
> 5634 	      else if (nread == 0 && !NETCONN_P (proc) && !SERIALCONN_P (proc)
> 5635 		       && !PIPECONN_P (proc))
> 5636 		;
> 5637 #endif
> 
> 5664 	      /* If we can detect process termination, don't consider the
> 5665 		 process gone just because its pipe is closed.  */
> 5666 	      else if (nread == 0 && !NETCONN_P (proc) && !SERIALCONN_P (proc)
> 5667 		       && !PIPECONN_P (proc))
> 5668 		;
> 
> Can the first be deleted?

Yes.  (The second was originally conditioned on SIGCHLD, which is why
it was separate.)

Thanks.