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

Re: Ignoreeof warning message regression



> On Tue, 2019-02-12 at 09:47 -0800, David Bohman wrote:
> > This is an old regression, which apparently occurred between release
5.3.1
> > and 5.4 of zsh.
> >
> > If you have the ignoreeof option set, and type a CTL-D to the shell, you
> > are supposed to get a warning message:
> >
> > zsh: use 'exit' to exit.
> >
> > Instead, a blank line is emitted. This was introduced by
> > commit 34656ec2f00d6669cef56afdbffdd90639d7b465, specifically the
change to
> > Src/Zle/zle_main.c.
> >
> > The problem occurs both on Ubuntu 18.04.1 running zsh 5.4.2 and macOS
> > 10.12.6 running 5.4 forwards to 5.7.1. Stock macOS 10.12.6 contains zsh
5.2
> > and does not manifest the bug.
> >
> > The problem disappears when the change to Src/Zle/zle_main.c is backed
out.
>
> Yes. In this case we do need to remember the state of the command line
> when we return to ZLE after passing nothing-very-much back to the main
> shell --- the ^D was ignored but we told the main shell about it anyway,
> then came back into ZLE expecting to pick up exactly where we left off,
> meaning we shouldn't clear the message we printed and that the main
> shell we briefly returned to knows nothing about... It's not at all
> clear that's sensible behaviour but refactoring the states of ZLE is
> probably beyond anyone's capabilities at this point.
> The original fix is here (zsh-workers/40305):
> http://www.zsh.org/mla/workers/2017/msg00053.html
> I'm not sure the change to zle_main.c there is the key one for the fix
> as a whole --- backing it off doesn't appear to make the specific
> problem (not the originally reported one in that thread) being addressed
> there fail, and it may be the associated change to clearflag in
> zle_refresh.c was the key one.
> However, as there were various related issues associated with
> asynchrohonous behaviour, it's hard to be sure.
> In the absence of a test suite for this sort of not only interactive but
> asynchronous behaviour (zpty is way out of its depth here), I'm tempted
> to make that change and see what happens.
> pws

Thanks. I'll admit that I am not familiar with the code.

I have installed the patched version on my system, and it seems to be
running fine.

David


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