summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pym/emerge/__init__.py19
1 files changed, 8 insertions, 11 deletions
diff --git a/pym/emerge/__init__.py b/pym/emerge/__init__.py
index ac6a2d456..4e1b7337b 100644
--- a/pym/emerge/__init__.py
+++ b/pym/emerge/__init__.py
@@ -2094,13 +2094,12 @@ class depgraph(object):
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:
@@ -2109,17 +2108,15 @@ class depgraph(object):
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
@@ -2138,7 +2135,7 @@ class depgraph(object):
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