Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: read -e does not restore terminal settings correctly when interrupted if

On Sun, Dec 21, 2014 at 5:16 AM, Mehran Kholdi <kholdi.mehran@xxxxxxxxx> wrote:
> Hi Zsh guys!
> There's a bug in bash that causes inconvenience for zsh users only,
> apparently. I don't know why it has been there for so long, given there is
> a patch for it already. Do you think there's a way to work around this in
> zsh instead?
> An excerpt from the original bug
> <https://lists.gnu.org/archive/html/bug-bash/2014-09/msg00029.html>:
> Given the following script (test.sh) :
>>         #!/bin/bash
>>         cleanup() { :; }
>>         trap cleanup 0
>>         read -e dummy
>> Run the script ('bash test.sh') *in ZSH* and when it waits for an
>> input, interrupt it with Ctrl-C. Your terminal is now messed-up. This can
>> be verified by running 'cat
>> -t' and pressing Enter. ^M will be printed instead of a newline and
>> password
>> prompts such as the one in sudo cannot be submitted by pressing Enter
>> anymore.

I can't reproduce the issue, but you could try running ttyctl -f
before running the buggy program, and zsh should restore all tty
settings after every command (including stty).

Mikael Magnusson

Messages sorted by: Reverse Date, Date, Thread, Author