Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: Ignoreeof warning message regression
- X-seq: zsh-workers 44066
- From: David Bohman <debohman@xxxxxxxxx>
- To: zsh-workers@xxxxxxx
- Subject: Re: Ignoreeof warning message regression
- Date: Wed, 13 Feb 2019 15:50:55 -0800
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=XuJm1uOGT2wydZkqwgfdjGIx6p3txDGxoVmL84RhW58=; b=CB1DsAf/fNICaajxTkBdGRNInxBStsXL5PbgN3CNJRp4gNi16K+qNAXg/3vy9ugTp1 GMHCwst/GsYrDIe5nuJkgC8sEI6hlDS/xJiynEFCHowVbf5TTZRtlBtxJZZj3ak25jA4 nvYUOjEu0uxKGrTbYvEHOPk3wszNtfE8F7f+TqDKiDJbBMPdTfkscQa+uzGp073cdHnu u+yNDGhNlLjRNJSVd1t8RqOL9Vqze12+IRKr9rScwNcmxiDa7YtzBiye8TkcqmzHj3af 8M7fAmHf1QFsN6KkgYizcLSqI3W/E/oG76o9j3ptI7yACaHrxvQpEh2yME6sVrPxQorI fYBQ==
- List-help: <mailto:zsh-workers-help@zsh.org>
- List-id: Zsh Workers List <zsh-workers.zsh.org>
- List-post: <mailto:zsh-workers@zsh.org>
- List-unsubscribe: <mailto:zsh-workers-unsubscribe@zsh.org>
- Mailing-list: contact zsh-workers-help@xxxxxxx; run by ezmlm
> 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