diff options
Diffstat (limited to 'bitbake/lib/bb/ui')
-rw-r--r-- | bitbake/lib/bb/ui/uihelper.py | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/bitbake/lib/bb/ui/uihelper.py b/bitbake/lib/bb/ui/uihelper.py index c96f381c54..2c78695377 100644 --- a/bitbake/lib/bb/ui/uihelper.py +++ b/bitbake/lib/bb/ui/uihelper.py | |||
@@ -23,6 +23,8 @@ class BBUIHelper: | |||
23 | def __init__(self): | 23 | def __init__(self): |
24 | self.needUpdate = False | 24 | self.needUpdate = False |
25 | self.running_tasks = {} | 25 | self.running_tasks = {} |
26 | # Running PIDs preserves the order tasks were executed in | ||
27 | self.running_pids = [] | ||
26 | self.failed_tasks = [] | 28 | self.failed_tasks = [] |
27 | self.tasknumber_current = 0 | 29 | self.tasknumber_current = 0 |
28 | self.tasknumber_total = 0 | 30 | self.tasknumber_total = 0 |
@@ -30,16 +32,20 @@ class BBUIHelper: | |||
30 | def eventHandler(self, event): | 32 | def eventHandler(self, event): |
31 | if isinstance(event, bb.build.TaskStarted): | 33 | if isinstance(event, bb.build.TaskStarted): |
32 | self.running_tasks[event.pid] = { 'title' : "%s %s" % (event._package, event._task) } | 34 | self.running_tasks[event.pid] = { 'title' : "%s %s" % (event._package, event._task) } |
35 | self.running_pids.append(event.pid) | ||
33 | self.needUpdate = True | 36 | self.needUpdate = True |
34 | if isinstance(event, bb.build.TaskSucceeded): | 37 | if isinstance(event, bb.build.TaskSucceeded): |
35 | del self.running_tasks[event.pid] | 38 | del self.running_tasks[event.pid] |
39 | self.running_pids.remove(event.pid) | ||
36 | self.needUpdate = True | 40 | self.needUpdate = True |
37 | if isinstance(event, bb.build.TaskFailedSilent): | 41 | if isinstance(event, bb.build.TaskFailedSilent): |
38 | del self.running_tasks[event.pid] | 42 | del self.running_tasks[event.pid] |
43 | self.running_pids.remove(event.pid) | ||
39 | # Don't add to the failed tasks list since this is e.g. a setscene task failure | 44 | # Don't add to the failed tasks list since this is e.g. a setscene task failure |
40 | self.needUpdate = True | 45 | self.needUpdate = True |
41 | if isinstance(event, bb.build.TaskFailed): | 46 | if isinstance(event, bb.build.TaskFailed): |
42 | del self.running_tasks[event.pid] | 47 | del self.running_tasks[event.pid] |
48 | self.running_pids.remove(event.pid) | ||
43 | self.failed_tasks.append( { 'title' : "%s %s" % (event._package, event._task)}) | 49 | self.failed_tasks.append( { 'title' : "%s %s" % (event._package, event._task)}) |
44 | self.needUpdate = True | 50 | self.needUpdate = True |
45 | if isinstance(event, bb.runqueue.runQueueTaskStarted): | 51 | if isinstance(event, bb.runqueue.runQueueTaskStarted): |