summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pym/portage/dbapi/bintree.py7
1 files changed, 4 insertions, 3 deletions
diff --git a/pym/portage/dbapi/bintree.py b/pym/portage/dbapi/bintree.py
index 1e9f9aeeb..04f598a13 100644
--- a/pym/portage/dbapi/bintree.py
+++ b/pym/portage/dbapi/bintree.py
@@ -598,13 +598,14 @@ class binarytree(object):
aux_cache[k] = d[k]
self.dbapi._aux_cache[mycpv] = aux_cache
+ for cpv in list(metadata):
+ if cpv not in pkg_paths:
+ del metadata[cpv]
+
# Do not bother to write the Packages index if $PKGDIR/All/ exists
# since it will provide no benefit due to the need to read CATEGORY
# from xpak.
if update_pkgindex and os.access(self.pkgdir, os.W_OK):
- stale = [cpv for cpv in metadata if cpv not in self._pkg_paths]
- for cpv in stale:
- del metadata[cpv]
del pkgindex.packages[:]
pkgindex.packages.extend(metadata.itervalues())
self._update_pkgindex_header(pkgindex.header)