diff options
author | Baptiste Daroussin <bapt@FreeBSD.org> | 2012-01-13 21:05:13 +0000 |
---|---|---|
committer | Baptiste Daroussin <bapt@FreeBSD.org> | 2012-01-13 21:05:13 +0000 |
commit | cd62e28a339d136b8de48939a7b1eaefcdfc3970 (patch) | |
tree | 39b5cc8cd8076af39277cfa63195f6d216b755b8 /shells/zsh | |
parent | 25ccb5ca5566cb3fbb6e4468ace08ea177e61321 (diff) |
Notes
Diffstat (limited to 'shells/zsh')
-rw-r--r-- | shells/zsh/Makefile | 1 | ||||
-rw-r--r-- | shells/zsh/files/patch-Src__Zle__zle_main.c | 30 |
2 files changed, 31 insertions, 0 deletions
diff --git a/shells/zsh/Makefile b/shells/zsh/Makefile index 4055c6fb8d2a..4cac54949e1a 100644 --- a/shells/zsh/Makefile +++ b/shells/zsh/Makefile @@ -7,6 +7,7 @@ PORTNAME= zsh PORTVERSION= 4.3.15 +PORTREVISION= 1 CATEGORIES= shells MASTER_SITES= SF/${PORTNAME}/${PORTNAME}-dev/${PORTVERSION} \ SF/${PORTNAME}/${PORTNAME}-doc-dev/${PORTVERSION}:doc diff --git a/shells/zsh/files/patch-Src__Zle__zle_main.c b/shells/zsh/files/patch-Src__Zle__zle_main.c new file mode 100644 index 000000000000..f8ecf8a1ca8b --- /dev/null +++ b/shells/zsh/files/patch-Src__Zle__zle_main.c @@ -0,0 +1,30 @@ +--- ./Src/Zle/zle_main.c.orig 2012-01-13 21:55:51.773384066 +0100 ++++ ./Src/Zle/zle_main.c 2012-01-13 21:56:14.530384358 +0100 +@@ -1200,6 +1200,18 @@ + putc('\r', shout); + if (tmout) + alarm(tmout); ++ ++ /* ++ * On some windowing systems we may enter this function before the ++ * terminal is fully opened and sized, resulting in an infinite ++ * series of SIGWINCH when the handler prints the prompt before we ++ * have done so here. Therefore, hold any such signal until the ++ * first full refresh has completed. The important bit is that the ++ * handler must not see zleactive = 1 until ZLE really is active. ++ * See the end of adjustwinsize() in Src/utils.c ++ */ ++ queue_signals(); ++ + zleactive = 1; + resetneeded = 1; + errflag = retflag = 0; +@@ -1209,6 +1221,8 @@ + + zrefresh(); + ++ unqueue_signals(); /* Should now be safe to acknowledge SIGWINCH */ ++ + zlecallhook("zle-line-init", NULL); + + zlecore(); |