1 |
Author: zmedico |
2 |
Date: 2008-06-25 20:47:38 +0000 (Wed, 25 Jun 2008) |
3 |
New Revision: 10789 |
4 |
|
5 |
Modified: |
6 |
main/trunk/pym/_emerge/__init__.py |
7 |
Log: |
8 |
Swap out the whole Package.root_config attribute inside depgraph.break_refs(). |
9 |
|
10 |
|
11 |
Modified: main/trunk/pym/_emerge/__init__.py |
12 |
=================================================================== |
13 |
--- main/trunk/pym/_emerge/__init__.py 2008-06-25 20:26:36 UTC (rev 10788) |
14 |
+++ main/trunk/pym/_emerge/__init__.py 2008-06-25 20:47:38 UTC (rev 10789) |
15 |
@@ -3946,18 +3946,15 @@ |
16 |
if not isinstance(node, Package): |
17 |
continue |
18 |
|
19 |
- # The visible packages cache has fullfilled it's purpose |
20 |
- # and it's no longer needed, so free the memory. |
21 |
- node.root_config.visible_pkgs.clear() |
22 |
+ # The FakeVartree references the _package_cache which |
23 |
+ # references the depgraph. So that Package instances don't |
24 |
+ # hold the depgraph and FakeVartree on the heap, replace |
25 |
+ # the RootConfig that references the FakeVartree with the |
26 |
+ # original RootConfig instance which references the actual |
27 |
+ # vartree. |
28 |
+ node.root_config = \ |
29 |
+ self._trees_orig[node.root]["root_config"] |
30 |
|
31 |
- if isinstance(node.root_config.trees["vartree"], FakeVartree): |
32 |
- # The FakeVartree references the _package_cache which |
33 |
- # references the depgraph. So that Package instances don't |
34 |
- # hold the depgraph and FakeVartree on the heap, replace |
35 |
- # the FakeVartree reference with the real vartree. |
36 |
- node.root_config.trees["vartree"] = \ |
37 |
- self._trees_orig[node.root]["vartree"] |
38 |
- |
39 |
def _resolve_conflicts(self): |
40 |
if not self._complete_graph(): |
41 |
raise self._unknown_internal_error() |
42 |
|
43 |
-- |
44 |
gentoo-commits@l.g.o mailing list |