about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--Completion/Base/Completer/_expand_alias5
2 files changed, 9 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 55268b65b..bf3b60e48 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2007-09-18  Peter Stephenson  <pws@csr.com>
+
+	* users/11852: Completion/Base/Completer/_expand_alias:
+	quotes were incorrectly removed from aliases.
+
 2007-09-13  Clint Adams  <clint@zsh.org>
 
 	* 23813: Src/Zle/zle_hist.c: set vipenultsrchstr to NULL
diff --git a/Completion/Base/Completer/_expand_alias b/Completion/Base/Completer/_expand_alias
index e711338a8..ee361d1bf 100644
--- a/Completion/Base/Completer/_expand_alias
+++ b/Completion/Base/Completer/_expand_alias
@@ -39,7 +39,10 @@ tmp=
 [[ -z $tmp && $sel = *G* ]] && tmp=$dis_galiases[$word]
 
 if [[ -n $tmp ]]; then
-  $pre _wanted aliases expl alias compadd -UQ ${(Q)tmp%%[[:blank:]]##}
+  # We used to remove the quoting from the value in the parameter.
+  # That was probably just an oversight: an alias is always replaced
+  # literally.
+  $pre _wanted aliases expl alias compadd -UQ ${tmp%%[[:blank:]]##}
 elif (( $#pre )) && zstyle -t ":completion:${curcontext}:" complete; then
   $pre _aliases -s "$sel" -S ''
 else