From: Zac Medico Date: Wed, 25 Jun 2008 20:47:38 +0000 (-0000) Subject: Swap out the whole Package.root_config attribute inside depgraph.break_refs(). X-Git-Tag: v2.2_rc2~332 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=4ac209e6cf6c49d88b06a4ddaa3bacd11695791d;p=portage.git Swap out the whole Package.root_config attribute inside depgraph.break_refs(). svn path=/main/trunk/; revision=10789 --- diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py index 79b38f64d..2f54b6b65 100644 --- a/pym/_emerge/__init__.py +++ b/pym/_emerge/__init__.py @@ -3946,17 +3946,14 @@ class depgraph(object): if not isinstance(node, Package): continue - # The visible packages cache has fullfilled it's purpose - # and it's no longer needed, so free the memory. - node.root_config.visible_pkgs.clear() - - if isinstance(node.root_config.trees["vartree"], FakeVartree): - # The FakeVartree references the _package_cache which - # references the depgraph. So that Package instances don't - # hold the depgraph and FakeVartree on the heap, replace - # the FakeVartree reference with the real vartree. - node.root_config.trees["vartree"] = \ - self._trees_orig[node.root]["vartree"] + # The FakeVartree references the _package_cache which + # references the depgraph. So that Package instances don't + # hold the depgraph and FakeVartree on the heap, replace + # the RootConfig that references the FakeVartree with the + # original RootConfig instance which references the actual + # vartree. + node.root_config = \ + self._trees_orig[node.root]["root_config"] def _resolve_conflicts(self): if not self._complete_graph():