about summary refs log tree commit diff
diff options
context:
space:
mode:
authorBarton E. Schaefer <schaefer@zsh.org>2014-09-19 19:42:45 -0700
committerBarton E. Schaefer <schaefer@zsh.org>2014-09-19 19:42:45 -0700
commite1ba30afae4e0a81bec3c4e3616711ed1e265fad (patch)
tree198b848cef8a8cf02b507c2b378ea5883457e3d3
parent08e5191ff016f9df61bb157fc56cb9af6c599863 (diff)
downloadzsh-e1ba30afae4e0a81bec3c4e3616711ed1e265fad.tar.gz
zsh-e1ba30afae4e0a81bec3c4e3616711ed1e265fad.tar.xz
zsh-e1ba30afae4e0a81bec3c4e3616711ed1e265fad.zip
33205: keep array of completions and array of display strings in sync when filtering for matches
-rw-r--r--ChangeLog6
-rw-r--r--Completion/Base/Utility/_describe2
2 files changed, 7 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 27b567740..857b7dba5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2014-09-19  Barton E. Schaefer  <schaefer@zsh.org>
+
+	* 33205: Completion/Base/Utility/_describe: if passed both an
+	array of completions and an array of display strings, keep them
+	in sync when filtering for matches.
+
 2014-09-18  Peter Stephenson  <p.w.stephenson@ntlworld.com>
 
 	* users/19097: Doc/Zsh/mod_parameter.yo,
diff --git a/Completion/Base/Utility/_describe b/Completion/Base/Utility/_describe
index f899b0ad0..1a9f52f5d 100644
--- a/Completion/Base/Utility/_describe
+++ b/Completion/Base/Utility/_describe
@@ -96,7 +96,7 @@ while _tags; do
         fi
     
         if [[ -n $_mats ]]; then
-          compadd "$_opts[@]" "${(@)_expl:/-J/-2V}" -D $_strs - \
+          compadd "$_opts[@]" "${(@)_expl:/-J/-2V}" -D $_strs -O $_mats - \
                   "${(@)${(@M)${(@P)_mats}##([^:\\]|\\?)##}//\\(#b)(?)/$match[1]}"
         else
           compadd "$_opts[@]" "${(@)_expl:/-J/-2V}" -D $_strs - \