From: Zac Medico Date: Wed, 11 Mar 2009 06:21:17 +0000 (-0000) Subject: In traversing deps to add to Scheduler._unsatisfied_system_deps, only traverse X-Git-Tag: v2.1.6.8~108 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=e63e739e25a2a8a84c1218d040056b187861ecf0;p=portage.git 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 --- 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: