From: Zac Medico Date: Mon, 2 Jul 2007 03:40:07 +0000 (-0000) Subject: Clean up the selected_nodes logic in depgraph.altlist(). (trunk r7122) X-Git-Tag: v2.1.3~105 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=3421ab8a450463c1a533856469c854e810e1f8c2;p=portage.git Clean up the selected_nodes logic in depgraph.altlist(). (trunk r7122) svn path=/main/branches/2.1.2/; revision=7123 --- diff --git a/bin/emerge b/bin/emerge index f84260f51..618433e60 100755 --- a/bin/emerge +++ b/bin/emerge @@ -2063,13 +2063,12 @@ class depgraph: if "portage" == portage.catsplit(portage.dep_getkey(cpv))[-1]: asap_nodes.append(node) break - ignore_priority_range = [None] - ignore_priority_range.extend( + ignore_priority_soft_range = [None] + ignore_priority_soft_range.extend( xrange(DepPriority.MIN, DepPriority.SOFT + 1)) tree_mode = "--tree" in self.myopts while not mygraph.empty(): - ignore_priority = None - nodes = None + selected_nodes = None if asap_nodes: """ASAP nodes are merged before their soft deps.""" for node in asap_nodes: @@ -2078,17 +2077,15 @@ class depgraph: continue if not mygraph.child_nodes(node, ignore_priority=DepPriority.SOFT): - nodes = [node] + selected_nodes = [node] asap_nodes.remove(node) break - if not nodes: - for ignore_priority in ignore_priority_range: + if not selected_nodes: + for ignore_priority in ignore_priority_soft_range: nodes = get_nodes(ignore_priority=ignore_priority) if nodes: break - selected_nodes = None - if nodes: - if ignore_priority <= DepPriority.SOFT: + if nodes: if ignore_priority is None and not tree_mode: # Greedily pop all of these nodes since no relationship # has been ignored. This optimization destroys --tree @@ -2107,7 +2104,7 @@ class depgraph: if not selected_nodes: # settle for a root node selected_nodes = [nodes[0]] - if not nodes: + if not selected_nodes: nodes = get_nodes(ignore_priority=DepPriority.MEDIUM) if nodes: """Recursively gather a group of nodes that RDEPEND on