summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2009-01-12 09:51:10 +0000
committerZac Medico <zmedico@gentoo.org>2009-01-12 09:51:10 +0000
commitca2c66732a2b6b7285bee87f1bb9650811f658cd (patch)
treeed8107471bc9e37146f2be68de66c71212a65bf7
parentFix comment about the greedy slots code. (diff)
downloadportage-multirepo-ca2c66732a2b6b7285bee87f1bb9650811f658cd.tar.gz
portage-multirepo-ca2c66732a2b6b7285bee87f1bb9650811f658cd.tar.bz2
portage-multirepo-ca2c66732a2b6b7285bee87f1bb9650811f658cd.zip
Invalidate some more caches inside depgraph._set_args().
svn path=/main/trunk/; revision=12484
-rw-r--r--pym/_emerge/__init__.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py
index e1f1f35e..dc1d932a 100644
--- a/pym/_emerge/__init__.py
+++ b/pym/_emerge/__init__.py
@@ -5634,6 +5634,8 @@ class depgraph(object):
# Invalidate the package selection cache, since
# arguments influence package selections.
self._highest_pkg_cache.clear()
+ for trees in self._filtered_trees.itervalues():
+ trees["porttree"].dbapi._clear_cache()
def _greedy_slots(self, root_config, atom, blocker_lookahead=False):
"""
@@ -8639,6 +8641,10 @@ class depgraph(object):
self._match_cache = {}
self._cpv_pkg_map = {}
+ def _clear_cache(self):
+ self._match_cache.clear()
+ self._cpv_pkg_map.clear()
+
def match(self, atom):
ret = self._match_cache.get(atom)
if ret is not None: