Subject: Re: bug#56025: [WIP PATCH] 29.0.50; em-extpipe-test-2 times out on EMBA and Cygwin

From: Jim Porter <[email-masked]>
Date: Sun, 17 Jul 2022 22:26:36 -0700

On 7/17/2022 2:59 PM, Ken Brown wrote:
> On 7/16/2022 10:35 PM, Jim Porter wrote:
>> Ok, attached is a WIP patch to do this. It seems to work for me under 
>> Cygwin, although I've only lightly tested it in that environment. If 
>> this works for you too, I'll finish cleaning this up and add 
>> tests/documentation for it.
> 
> It does work for me too.  Thanks!

Great! This should make Eshell behave a bit more similarly to other 
shells, so hopefully this will help prevent other issues in this area.

>> Note that in my patch, I temporarily undid my previous patch to send 
>> EOF multiple times. This is just for testing purposes, but since we're 
>> using a pipe for this connection now, a single call to 
>> `process-send-eof' should be sufficient.
> 
> There shouldn't be a need for any calls to process-send-eof.  This is a 
> noop anyway when writing to a pipe, as it should be.

Looking at the implementation of `process-send-eof', I think it's 
(somewhat misleadingly) also responsible for closing the file descriptor 
when writing to a pipe, so I believe we'll need at least one call to 
that function.

As you say though, it shouldn't be too hard for Eshell to check whether 
it's writing to a pipe and only try to call `process-send-eof' once in 
that case.