summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog7
-rw-r--r--Completion/Unix/Type/_path_files6
2 files changed, 11 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 17f9a5ffa..df82bff5a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2002-05-29 Sven Wischnowsky <wischnow@zsh.org>
+
+ * 17252: Completion/Unix/Type/_path_files: fix for use of (z)
+ parameter modifier; the first word in the parameter is parsed
+ like the first word on a command line, treating parens
+ specially
+
2002-05-29 Peter Stephenson <pws@csr.com>
* 17250: Src/signals.c: don't execsave()/execrestore() around
diff --git a/Completion/Unix/Type/_path_files b/Completion/Unix/Type/_path_files
index b41f8afa9..dd1089e67 100644
--- a/Completion/Unix/Type/_path_files
+++ b/Completion/Unix/Type/_path_files
@@ -23,9 +23,11 @@ sopt="-${(@j::M)${(@)tmp1#-}#?}"
(( $tmp1[(I)-[/g]*] )) && haspats=yes
(( $tmp1[(I)-g*] )) && gopt=yes
if (( $tmp1[(I)-/] )); then
- pats=( '*(-/)' ${(z)${(M)tmp1:#-g*}#-g} )
+ pats="${(@)${(@M)tmp1:#-g*}#-g}"
+ pats=( '*(-/)' ${${(z):-x $pats}[2,-1]} )
else
- pats=( "${(@z)${(@M)tmp1:#-g*}#-g}" )
+ pats="${(@)${(@M)tmp1:#-g*}#-g}"
+ pats=( ${${(z):-x $pats}[2,-1]} )
fi
pats=( "${(@)pats:# #}" )