[oe-commits] [bitbake] 01/21: knotty: Handle process indicators more gracefully

git at git.openembedded.org git at git.openembedded.org
Fri Jul 8 08:59:47 UTC 2016


rpurdie pushed a commit to branch master
in repository bitbake.

commit 7dd06b1016b36420a9c55a45ff29dd64ae1dbcda
Author: Richard Purdie <richard.purdie at linuxfoundation.org>
AuthorDate: Thu Jul 7 14:26:34 2016 +0100

    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.
    
    Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
 lib/bb/ui/knotty.py | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

diff --git a/lib/bb/ui/knotty.py b/lib/bb/ui/knotty.py
index dbcb9c4..e8e169f 100644
--- a/lib/bb/ui/knotty.py
+++ b/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

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list