summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2009-02-26 07:50:49 +0000
committerZac Medico <zmedico@gentoo.org>2009-02-26 07:50:49 +0000
commitdbe8584ad36f01ef3fdb1ca4245d346c181f972e (patch)
tree1319785a548074e2408539a5ef96117c0de5eea1
parentbd75495cc5771726084073d20ab556205cb2521e (diff)
downloadportage-dbe8584ad36f01ef3fdb1ca4245d346c181f972e.tar.gz
portage-dbe8584ad36f01ef3fdb1ca4245d346c181f972e.tar.bz2
portage-dbe8584ad36f01ef3fdb1ca4245d346c181f972e.zip
In traversing deps to add to Scheduler._unsatisfied_system_deps, only traverse
completed 'merge' nodes since those are the only ones that need to be checked for unsatisfied runtime deps, and it's normal for nodes that aren't yet complete to have unsatisfied runtime deps. svn path=/main/trunk/; revision=12714
-rw-r--r--pym/_emerge/__init__.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py
index 0ea40b905..8b7c69e7c 100644
--- a/pym/_emerge/__init__.py
+++ b/pym/_emerge/__init__.py
@@ -10822,7 +10822,14 @@ class Scheduler(PollScheduler):
continue
if child is pkg:
continue
- dep_stack.append(child)
+ if child.operation == 'merge' and \
+ child in completed_tasks:
+ # When traversing children, only traverse completed
+ # 'merge' nodes since those are the only ones that need
+ # to be checked for unsatisfied runtime deps, and it's
+ # normal for nodes that aren't yet complete to have
+ # unsatisfied runtime deps.
+ dep_stack.append(child)
if child.operation == 'merge' and \
child not in completed_tasks and \
child in unsatisfied_runtime: