bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#56025: 29.0.50; em-extpipe-test-2 times out on EMBA and Cygwin


From: Ken Brown
Subject: bug#56025: 29.0.50; em-extpipe-test-2 times out on EMBA and Cygwin
Date: Sat, 18 Jun 2022 13:52:41 -0400
User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.9.1

On 6/17/2022 11:50 PM, Jim Porter wrote:
On 6/17/2022 7:07 PM, Ken Brown wrote:
On 6/17/2022 8:57 PM, Sean Whitton wrote:
Could you see if the same thing happens if you type

     echo "bar" | sh -c "rev >temp"

into an interactive session, please?

If it's the same then extpipe has uncovered a general Eshell bug.

Yes, it's the same.  And it's even the same if I remove the quotation marks around "rev >temp".

Does the above command also fail on Emacs 28? I changed some aspects of process management for Eshell in Emacs 29, so it's possible this is a regression. If it works correctly under Emacs 28, I'd be very interested to see the results of bisecting to find the breaking commit.

No, I'm seeing the same results on Emacs 28. On both Emacs 28 and Emacs 29, rev is apparently not seeing EOF unless echo outputs a newline, so rev keeps waiting for input.

[Side note: It took me a while to sort this out because (a) Eshell's echo does not output a newline by default, in contrast to Bash's builtin echo; (b) in Eshell in Emacs 28, you use '-n' to add a newline, while in Bash '-n' suppresses the newline; and (c) in Eshell in Emacs 29, you use '-N' to add a newline.]

Here's my simplest reproduction recipe for the bug: Type 'echo bar | rev' into Eshell. In both Emacs 28 and Emacs 29, 'rab' is output but rev keeps running.

But if I make echo output a newline (by '-n' in Emacs 28 and '-N' in Emacs 29), then rev exits after outputting 'rab' (followed by newline).

Ken





reply via email to

[Prev in Thread] Current Thread [Next in Thread]