summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Stephenson <pws@zsh.org>2014-12-05 17:06:28 +0000
committerPeter Stephenson <pws@zsh.org>2014-12-05 17:06:28 +0000
commitb4a198cdda3d499af4e2b4f4a2279f98c8d07433 (patch)
tree86e8cbecffba66db5683f222982f877d20fda385
parent231cbbc5b12f9d7135fea1e9015c100dffba91e0 (diff)
downloadzsh-b4a198cdda3d499af4e2b4f4a2279f98c8d07433.tar.gz
zsh-b4a198cdda3d499af4e2b4f4a2279f98c8d07433.zip
33859: Fix traps in completion
We need to use a function-style trap in order for the effect of the interrupt to propagate back correctly.
-rw-r--r--ChangeLog5
-rw-r--r--Completion/Base/Core/_main_complete7
2 files changed, 10 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index c03501faf..f655c9fbf 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2014-12-05 Peter Stephenson <p.stephenson@samsung.com>
+
+ * 33859 with typo fix: Completion/Base/Core/_main_complete: to
+ propagate signal from trap we need to use function style.
+
2014-12-04 Barton E. Schaefer <schaefer@zsh.org>
* 33841: Doc/Zsh/params.yo: explain array append a bit better
diff --git a/Completion/Base/Core/_main_complete b/Completion/Base/Core/_main_complete
index fcd63664e..91b68fe5d 100644
--- a/Completion/Base/Core/_main_complete
+++ b/Completion/Base/Core/_main_complete
@@ -128,8 +128,11 @@ _completer_num=1
# We assume localtraps to be in effect here ...
integer SECONDS=0
-trap 'zle -M "Killed by signal in ${funcstack[1]} after ${SECONDS}s";
- zle -R; return 130' INT QUIT
+TRAPINT TRAPQUIT() {
+ zle -M "Killed by signal in ${funcstack[1]} after ${SECONDS}s";
+ zle -R
+ return 130
+}
# Call the pre-functions.