summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--Completion/compinit2
2 files changed, 6 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 5913101a8..e91fa48cd 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2025-11-17 Oliver Kiddle <opk@zsh.org>
+
+ * 54034: Completion/compinit: ignore completer filenames with funny
+ characters in them
+
2025-11-16 dana <dana@dana.is>
* 53671: Src/hist.c, Test/D02glob.ztst: hist: untokenise input
diff --git a/Completion/compinit b/Completion/compinit
index 5cb527fac..2bfd30f2e 100644
--- a/Completion/compinit
+++ b/Completion/compinit
@@ -520,7 +520,7 @@ if [[ -z "$_i_done" ]]; then
for _i_dir in $fpath; do
[[ $_i_dir = . ]] && continue
(( $_i_wdirs[(I)$_i_dir] )) && continue
- for _i_file in $_i_dir/^([^_]*|*~|*.zwc)(N); do
+ for _i_file in $_i_dir/^([^_]*|*[\;\|\&]*|*~|*.zwc)(N); do
_i_name="${_i_file:t}"
(( $+_i_test[$_i_name] + $_i_wfiles[(I)$_i_file] )) && continue
_i_test[$_i_name]=yes