about summary refs log tree commit diff
path: root/Src
diff options
context:
space:
mode:
authorBart Schaefer <schaefer@ipost.com>2021-02-11 19:13:47 -0800
committerBart Schaefer <schaefer@ipost.com>2021-02-11 19:13:47 -0800
commit2cf6032a301d994c578e5e1942c4815e85651647 (patch)
tree5c32e1fdd187052bb7edbf9dfe92ae7823a29ee0 /Src
parent073092f89dcf9fc1e59f9e3c5048f8c4829eae07 (diff)
downloadzsh-2cf6032a301d994c578e5e1942c4815e85651647.tar.gz
zsh-2cf6032a301d994c578e5e1942c4815e85651647.tar.xz
zsh-2cf6032a301d994c578e5e1942c4815e85651647.zip
47997: Disable XTRACE around user-defined completion widgets.
Diffstat (limited to 'Src')
-rw-r--r--Src/Zle/compcore.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/Src/Zle/compcore.c b/Src/Zle/compcore.c
index 958fef8e7..5162d97dc 100644
--- a/Src/Zle/compcore.c
+++ b/Src/Zle/compcore.c
@@ -821,6 +821,7 @@ callcompfunc(char *s, char *fn)
 	sfcontext = SFC_CWIDGET;
 	NEWHEAPS(compheap) {
 	    LinkList largs = NULL;
+	    int oxt = isset(XTRACE);
 
 	    if (*cfargs) {
 		char **p = cfargs;
@@ -830,7 +831,9 @@ callcompfunc(char *s, char *fn)
 		while (*p)
 		    addlinknode(largs, dupstring(*p++));
 	    }
+	    opts[XTRACE] = 0;
 	    cfret = doshfunc(shfunc, largs, 1);
+	    opts[XTRACE] = oxt;
 	} OLDHEAPS;
 	sfcontext = osc;
 	endparamscope();