Subject: bug#79079: 31.0.50; Piped command output is sometimes lost in Eshell

From: Eli Zaretskii <[email-masked]>
Date: Sun, 27 Jul 2025 07:30:34 +0300

> Date: Sat, 26 Jul 2025 10:23:48 -0700
> Cc: [email-masked], [email-masked], [email-masked]
> From: Jim Porter <[email-masked]>
> 
> On 7/26/2025 3:15 AM, Eli Zaretskii wrote:
> >> Date: Thu, 24 Jul 2025 08:52:16 -0700
> >> Cc: [email-masked], [email-masked]
> >> From: Jim Porter <[email-masked]>
> >>
> > So calling the filter of the "head"s process when we get EPIPE should
> > fix that, no?
> 
> It would probably fix this particular case, but I'm not sure it's the 
> correct way to do it in general. I'll construct some test programs to 
> test out some of the corner cases here so that we can be sure whatever 
> implementation we do settle on works correctly in all cases.

We should try doing what a Posix shell does in that case.  A program
that gets EPIPE generally exits with a failure status (right?),
anything that happens after that is done by the shell itself.