about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--Completion/Debian/Command/_apt2
2 files changed, 7 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 6ec9874ea..337a53c06 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2007-12-27  Clint Adams  <clint@zsh.org>
+
+	* 24323: Completion/Debian/Command/_apt: for performance reasons,
+	procure release names via apt-cache policy instead of apt-cache
+	dump.
+
 2007-12-27  Wayne Davison  <wayned@users.sourceforge.net>
 
 	* unposted: Src/params.c: silenced a compiler warning by making
diff --git a/Completion/Debian/Command/_apt b/Completion/Debian/Command/_apt
index d65015774..c22e42ecb 100644
--- a/Completion/Debian/Command/_apt
+++ b/Completion/Debian/Command/_apt
@@ -551,7 +551,7 @@ _apt_releases_update () {
       _cache_invalid APT_releases ) && ! _retrieve_cache APT_releases;
   then
     _apt_releases=(
-${${${${(M)${(f)"$(apt-cache dump)"}:# #Archive:*}# #Archive: #}:#*\(null\)*}/ /}
+${${${${(M)${(f)"$(apt-cache policy)"}:#*release*}#*a=}%%,*}:#now}
     )
     typeset -U _apt_releases
     _store_cache APT_releases _apt_releases