summaryrefslogtreecommitdiffstats
path: root/bin/emerge
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2008-04-09 17:02:10 +0000
committerZac Medico <zmedico@gentoo.org>2008-04-09 17:02:10 +0000
commitf963cfd735d24bb18a34246def971387157dc85e (patch)
tree00cf0101318d6277de81e284a25b93b8be4440db /bin/emerge
parent4e0fe3accad7b1ec15bf2ba8adc6e1b7f9aa8b9c (diff)
downloadportage-f963cfd735d24bb18a34246def971387157dc85e.tar.gz
portage-f963cfd735d24bb18a34246def971387157dc85e.tar.bz2
portage-f963cfd735d24bb18a34246def971387157dc85e.zip
Make DepcheckCompositeDB cache Package instances for aux_get() calls.
(trunk r9771) svn path=/main/branches/2.1.2/; revision=9772
Diffstat (limited to 'bin/emerge')
-rwxr-xr-xbin/emerge9
1 files changed, 4 insertions, 5 deletions
diff --git a/bin/emerge b/bin/emerge
index 27fac55ab..eab47a44d 100755
--- a/bin/emerge
+++ b/bin/emerge
@@ -1555,7 +1555,7 @@ class DepcheckCompositeDB(object):
self._depgraph = depgraph
self._root = root
self._match_cache = {}
- self._cpv_tree_map = {}
+ self._cpv_pkg_map = {}
def match(self, atom):
ret = self._match_cache.get(atom)
@@ -1578,15 +1578,14 @@ class DepcheckCompositeDB(object):
# atoms or packages to be selected if available.
ret = []
if ret is None:
- self._cpv_tree_map[pkg.cpv] = \
- self._depgraph.pkg_tree_map[pkg.type_name]
+ self._cpv_pkg_map[pkg.cpv] = pkg
ret = [pkg.cpv]
self._match_cache[atom] = ret
return ret[:]
def aux_get(self, cpv, wants):
- return self._depgraph.trees[self._root][
- self._cpv_tree_map[cpv]].dbapi.aux_get(cpv, wants)
+ metadata = self._cpv_pkg_map[cpv].metadata
+ return [metadata.get(x, "") for x in wants]
class depgraph(object):