summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2010-08-28 17:10:46 -0700
committerZac Medico <zmedico@gentoo.org>2010-08-28 17:10:46 -0700
commitcd9b32f1e63e2c13b1f0da4cbd6c5c0c2787bb93 (patch)
tree7bffaa9dd8c3ffac8feac5b7ef035230030a26ed
parentd878e28bdfb2459d56310203754253fefddfb251 (diff)
downloadportage-cd9b32f1e63e2c13b1f0da4cbd6c5c0c2787bb93.tar.gz
portage-cd9b32f1e63e2c13b1f0da4cbd6c5c0c2787bb93.tar.bz2
portage-cd9b32f1e63e2c13b1f0da4cbd6c5c0c2787bb93.zip
Inside Scheduler._dependent_on_scheduled_merges(), don't traverse children
of uninstall nodes since those aren't dependencies in the usual sense.
-rw-r--r--pym/_emerge/Scheduler.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/pym/_emerge/Scheduler.py b/pym/_emerge/Scheduler.py
index 6979551a3..be4ef48af 100644
--- a/pym/_emerge/Scheduler.py
+++ b/pym/_emerge/Scheduler.py
@@ -1448,7 +1448,11 @@ class Scheduler(PollScheduler):
node in later):
dependent = True
break
- node_stack.extend(graph.child_nodes(node))
+
+ # Don't traverse children of uninstall nodes since
+ # those aren't dependencies in the usual sense.
+ if node.operation != "uninstall":
+ node_stack.extend(graph.child_nodes(node))
return dependent