[gnome-continuous-yocto/gnomeostree-3.28-rocko: 1209/8267] bitbake: knotty: Handle process indicators more gracefully
- From: Emmanuele Bassi <ebassi src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-continuous-yocto/gnomeostree-3.28-rocko: 1209/8267] bitbake: knotty: Handle process indicators more gracefully
- Date: Sat, 16 Dec 2017 21:30:25 +0000 (UTC)
commit 1b5688e0f0331ab9196cc534dabcade831a9090c
Author: Richard Purdie <richard purdie linuxfoundation org>
Date: Thu Jul 7 14:26:34 2016 +0100
bitbake: knotty: Handle process indicators more gracefully
Mistakes can happen with the generation of the progress events, change
knotty to be more tolerant of this rather than crashing, reporting to the
user when something unexpected happens. I haven't debugged why multiple
finish events appear to be triggered.
(Bitbake rev: 7dd06b1016b36420a9c55a45ff29dd64ae1dbcda)
Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>
bitbake/lib/bb/ui/knotty.py | 16 ++++++++++++----
1 files changed, 12 insertions(+), 4 deletions(-)
---
diff --git a/bitbake/lib/bb/ui/knotty.py b/bitbake/lib/bb/ui/knotty.py
index dbcb9c4..e8e169f 100644
--- a/bitbake/lib/bb/ui/knotty.py
+++ b/bitbake/lib/bb/ui/knotty.py
@@ -496,13 +496,16 @@ def main(server, eventHandler, params, tf = TerminalFilter):
parseprogress = new_progress("Parsing recipes", event.total).start()
continue
if isinstance(event, bb.event.ParseProgress):
- parseprogress.update(event.current)
+ if parseprogress:
+ parseprogress.update(event.current)
+ else:
+ bb.warn("Got ParseProgress event for parsing that never started?")
continue
if isinstance(event, bb.event.ParseCompleted):
if not parseprogress:
continue
-
parseprogress.finish()
+ pasreprogress = None
if not params.options.quiet:
print(("Parsing of %d .bb files complete (%d cached, %d parsed). %d targets, %d skipped,
%d masked, %d errors."
% ( event.total, event.cached, event.parsed, event.virtuals, event.skipped,
event.masked, event.errors)))
@@ -606,10 +609,15 @@ def main(server, eventHandler, params, tf = TerminalFilter):
parseprogress.start(False)
continue
if isinstance(event, bb.event.ProcessProgress):
- parseprogress.update(event.progress)
+ if parseprogress:
+ parseprogress.update(event.progress)
+ else:
+ bb.warn("Got ProcessProgress event for someting that never started?")
continue
if isinstance(event, bb.event.ProcessFinished):
- parseprogress.finish()
+ if parseprogress:
+ parseprogress.finish()
+ parseprogress = None
continue
# ignore
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]