about summary refs log tree commit diff
path: root/Completion/Base/Core
diff options
context:
space:
mode:
authorSven Wischnowsky <wischnow@users.sourceforge.net>2001-05-29 11:59:50 +0000
committerSven Wischnowsky <wischnow@users.sourceforge.net>2001-05-29 11:59:50 +0000
commit4a7abbfdd6c68616143bae840333adeed5ad0066 (patch)
tree2bc3f4bf439c78ee7e1135361bc86d2d708c0125 /Completion/Base/Core
parent1bb5d5aeb5565215aa3359874d7701045926b1b7 (diff)
downloadzsh-4a7abbfdd6c68616143bae840333adeed5ad0066.tar.gz
zsh-4a7abbfdd6c68616143bae840333adeed5ad0066.tar.xz
zsh-4a7abbfdd6c68616143bae840333adeed5ad0066.zip
use `eval $_comp_setup' in all entry points of the completion system to not only set up the options, but also redirect stdin and ignore trap handlers for ZERR (14530)
Diffstat (limited to 'Completion/Base/Core')
-rw-r--r--Completion/Base/Core/_main_complete7
1 files changed, 1 insertions, 6 deletions
diff --git a/Completion/Base/Core/_main_complete b/Completion/Base/Core/_main_complete
index f38354815..eecb30b34 100644
--- a/Completion/Base/Core/_main_complete
+++ b/Completion/Base/Core/_main_complete
@@ -16,12 +16,7 @@
 # which makes the output of setopt and unsetopt reflect a different
 # state than the global one for which you are completing.
 
-setopt localoptions ${_comp_options[@]}
-
-exec </dev/null	# ZLE closes stdin, which can cause errors
-
-# Failed returns from this code are not real errors
-setopt localtraps noerrexit ; trap - ZERR
+eval "$_comp_setup"
 
 local func funcs ret=1 tmp _compskip format nm call match min max i num\
       _completers _completer _completer_num curtag _comp_force_list \