Skip to contentSkip to conversation

runqueue.py: Fix missing setscene dependencies

PATCH New Richard Purdie 1 participant 1 message Jan 26, 2012

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 runqueue.py: Fix missing setscene dependencies

When constructing the setscene inter-dependencies, we need to account for all task, not just the last one found. This patch corrects this oversight and ensures all dependencies are added, not just the first one found.

---

bitbake/lib/bb/runqueue.py +5 -3
index c74e73c..a4030b3 100644
@@ -1435,18 +1435,20 @@ class RunQueueExecuteScenequeue(RunQueueExecute):
             sq_revdeps.append(copy.copy(self.rqdata.runq_revdeps[task]))
             sq_revdeps_new.append(set())
             if (len(self.rqdata.runq_revdeps[task]) == 0) and task not in self.rqdata.runq_setscene:
-                endpoints[task] = None
+                endpoints[task] = set()
 
         for task in self.rqdata.runq_setscene:
             for dep in self.rqdata.runq_depends[task]:
-                    endpoints[dep] = task
+                    if dep not in endpoints:
+                        endpoints[dep] = set()
+                    endpoints[dep].add(task)
 
         def process_endpoints(endpoints):
             newendpoints = {}
             for point, task in endpoints.items():
                 tasks = set()
                 if task:
-                    tasks.add(task)
+                    tasks |= task
                 if sq_revdeps_new[point]:
                     tasks |= sq_revdeps_new[point]
                 sq_revdeps_new[point] = set()