summaryrefslogtreecommitdiffstats
path: root/pym/_emerge
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2009-03-11 06:21:17 +0000
committerZac Medico <zmedico@gentoo.org>2009-03-11 06:21:17 +0000
commite63e739e25a2a8a84c1218d040056b187861ecf0 (patch)
treed5830e5835a5917fb04c6b37804f75fd5935773d /pym/_emerge
parentf87cd4108155f90eadedb029a1036f7232ef6f5d (diff)
downloadportage-e63e739e25a2a8a84c1218d040056b187861ecf0.tar.gz
portage-e63e739e25a2a8a84c1218d040056b187861ecf0.tar.bz2
portage-e63e739e25a2a8a84c1218d040056b187861ecf0.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. (trunk r12714) svn path=/main/branches/2.1.6/; revision=12969
Diffstat (limited to 'pym/_emerge')
-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 04df62a5d..4b0b08cbb 100644
--- a/pym/_emerge/__init__.py
+++ b/pym/_emerge/__init__.py
@@ -10806,7 +10806,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: