mirror of
git://git.code.sf.net/p/zsh/code
synced 2025-01-26 01:41:14 +01:00
20300: fix spurious EOF from ^C
This commit is contained in:
parent
7f2db6916e
commit
d24593bf38
2 changed files with 17 additions and 5 deletions
|
@ -1,3 +1,8 @@
|
|||
2004-09-02 Peter Stephenson <pws@csr.com>
|
||||
|
||||
* 20300: Src/Zle/zle_main.c: typing ^D to list completions,
|
||||
then two ^C's caused a spurious EOF.
|
||||
|
||||
2004-08-24 Wayne Davison <wayned@users.sourceforge.net>
|
||||
|
||||
* 20283: Completion/Unix/Command/_ant: Improved the parsing
|
||||
|
|
|
@ -687,12 +687,19 @@ zlecore(void)
|
|||
reselectkeymap();
|
||||
selectlocalmap(NULL);
|
||||
bindk = getkeycmd();
|
||||
if (!ll && isfirstln && !(zlereadflags & ZLRF_IGNOREEOF) &&
|
||||
lastchar == eofchar) {
|
||||
eofsent = 1;
|
||||
break;
|
||||
}
|
||||
if (bindk) {
|
||||
if (!ll && isfirstln && !(zlereadflags & ZLRF_IGNOREEOF) &&
|
||||
lastchar == eofchar) {
|
||||
/*
|
||||
* Slight hack: this relies on getkeycmd returning
|
||||
* a value for the EOF character. However,
|
||||
* undefined-key is fine. That's necessary because
|
||||
* otherwise we can't distinguish this case from
|
||||
* a ^C.
|
||||
*/
|
||||
eofsent = 1;
|
||||
break;
|
||||
}
|
||||
if (execzlefunc(bindk, zlenoargs))
|
||||
handlefeep(zlenoargs);
|
||||
handleprefixes();
|
||||
|
|
Loading…
Reference in a new issue