[gnome-continuous-yocto/gnomeostree-3.28-rocko: 1289/8267] bitbake: lib/bb/build.py: decode the command as UTF-8



commit faa726824dfb5bc0141919bb16c0d0069a3da69e
Author: Ross Burton <ross burton intel com>
Date:   Fri Jul 15 11:25:42 2016 +0100

    bitbake: lib/bb/build.py: decode the command as UTF-8
    
    The messaging FIFO is UTF-8, so decode the command as UTF-8 as well as the value
    as otherwise "bberror" != b("bberror") and none of the messages from shell
    functions are ever displayed.
    
    Also add an else to the command parser so unhandled commands are noticed.
    
    [ YOCTO #9947 ]
    
    (Bitbake rev: 42d727743fa599e0a3c5ad2c29a1e6ede1a918bb)
    
    Signed-off-by: Ross Burton <ross burton intel com>
    Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>

 bitbake/lib/bb/build.py |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)
---
diff --git a/bitbake/lib/bb/build.py b/bitbake/lib/bb/build.py
index 4fb2a77..04979ac 100644
--- a/bitbake/lib/bb/build.py
+++ b/bitbake/lib/bb/build.py
@@ -377,8 +377,11 @@ exit $ret
     def readfifo(data):
         lines = data.split(b'\0')
         for line in lines:
+            # Just skip empty commands
+            if not line:
+                continue
             splitval = line.split(b' ', 1)
-            cmd = splitval[0]
+            cmd = splitval[0].decode("utf-8")
             if len(splitval) > 1:
                 value = splitval[1].decode("utf-8")
             else:
@@ -402,7 +405,8 @@ exit $ret
                 level = int(splitval[0])
                 value = splitval[1]
                 bb.debug(level, value)
-
+            else:
+                bb.warn("Unrecognised command '%s' on FIFO" % cmd)
     tempdir = d.getVar('T', True)
     fifopath = os.path.join(tempdir, 'fifo.%s' % os.getpid())
     if os.path.exists(fifopath):


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]