mirror of
https://git.yoctoproject.org/poky
synced 2026-05-31 12:49:46 +00:00
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>
This commit is contained in:
committed by
Richard Purdie
parent
b7a741cbca
commit
faa726824d
@@ -377,8 +377,11 @@ exit $ret
|
|||||||
def readfifo(data):
|
def readfifo(data):
|
||||||
lines = data.split(b'\0')
|
lines = data.split(b'\0')
|
||||||
for line in lines:
|
for line in lines:
|
||||||
|
# Just skip empty commands
|
||||||
|
if not line:
|
||||||
|
continue
|
||||||
splitval = line.split(b' ', 1)
|
splitval = line.split(b' ', 1)
|
||||||
cmd = splitval[0]
|
cmd = splitval[0].decode("utf-8")
|
||||||
if len(splitval) > 1:
|
if len(splitval) > 1:
|
||||||
value = splitval[1].decode("utf-8")
|
value = splitval[1].decode("utf-8")
|
||||||
else:
|
else:
|
||||||
@@ -402,7 +405,8 @@ exit $ret
|
|||||||
level = int(splitval[0])
|
level = int(splitval[0])
|
||||||
value = splitval[1]
|
value = splitval[1]
|
||||||
bb.debug(level, value)
|
bb.debug(level, value)
|
||||||
|
else:
|
||||||
|
bb.warn("Unrecognised command '%s' on FIFO" % cmd)
|
||||||
tempdir = d.getVar('T', True)
|
tempdir = d.getVar('T', True)
|
||||||
fifopath = os.path.join(tempdir, 'fifo.%s' % os.getpid())
|
fifopath = os.path.join(tempdir, 'fifo.%s' % os.getpid())
|
||||||
if os.path.exists(fifopath):
|
if os.path.exists(fifopath):
|
||||||
|
|||||||
Reference in New Issue
Block a user