Make digraph._merge_order_bias() operate on a single digraph that's passed in. (trunk...
authorZac Medico <zmedico@gentoo.org>
Mon, 19 Feb 2007 07:08:50 +0000 (07:08 -0000)
committerZac Medico <zmedico@gentoo.org>
Mon, 19 Feb 2007 07:08:50 +0000 (07:08 -0000)
svn path=/main/branches/2.1.2/; revision=6013

bin/emerge

index c5ac0d4d1fea9b2974943cace8a37dcf1a1a994d..c5d34aa8d1dbab5842701c35d924324179edd682 100755 (executable)
@@ -1967,15 +1967,15 @@ class depgraph:
                                break
                return acceptable
 
-       def _merge_order_bias(self, nodes):
+       def _merge_order_bias(self, mygraph):
                """Order nodes from highest to lowest overall reference count for
                optimal leaf node selection."""
                node_info = {}
-               for node in self._parent_child_digraph.order:
-                       node_info[node] = len(self.digraph.parent_nodes(node))
+               for node in mygraph.order:
+                       node_info[node] = len(mygraph.parent_nodes(node))
                def cmp_merge_preference(node1, node2):
                        return node_info[node2] - node_info[node1]
-               nodes.sort(cmp_merge_preference)
+               mygraph.order.sort(cmp_merge_preference)
 
        def altlist(self, reversed=False):
                if reversed in self._altlist_cache:
@@ -1986,7 +1986,7 @@ class depgraph:
                        self._altlist_cache[reversed] = retlist[:]
                        return retlist
                mygraph=self.digraph.copy()
-               self._merge_order_bias(mygraph.order)
+               self._merge_order_bias(mygraph)
                myblockers = self.blocker_digraph.copy()
                retlist=[]
                circular_blocks = False