From 502bd2ef92f6cddf74ac85279dab621372791dc0 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Tue, 21 Jul 2009 22:32:35 +0100 Subject: bitbake: Fix a bug in runqueue and optimise slightly further Signed-off-by: Richard Purdie --- bitbake/lib/bb/runqueue.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'bitbake') diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py index ebc70ee61c..2f204aea97 100644 --- a/bitbake/lib/bb/runqueue.py +++ b/bitbake/lib/bb/runqueue.py @@ -464,10 +464,9 @@ class RunQueue: fnid = self.runq_fnid[task] if fnid not in reccumdepends: reccumdepends[fnid] = set() - if task in self.runq_depends: - reccumdepends[fnid].update(self.runq_depends[task]) - if fnid in tdepends_fnid: - reccumdepends[fnid].update(tdepends_fnid[fnid]) + if fnid in tdepends_fnid: + reccumdepends[fnid].update(tdepends_fnid[fnid]) + reccumdepends[fnid].update(self.runq_depends[task]) for task in range(len(self.runq_fnid)): taskfnid = self.runq_fnid[task] for fnid in reccumdepends: @@ -485,6 +484,9 @@ class RunQueue: if len(runq_recrdepends[task]) > 0: taskfnid = self.runq_fnid[task] for dep in reccumdepends[taskfnid]: + # Ignore self references + if dep == task: + continue for taskname in runq_recrdepends[task]: if taskData.tasks_name[dep] == taskname: self.runq_depends[task].add(dep) -- cgit v1.2.3