summaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2020-02-15 17:23:54 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2020-05-15 11:55:45 +0100
commit05e6558514114dfc4608fc64cdfe29cf5e790976 (patch)
tree0f69a8f10622d8843c866d6ab623090c6b19f04c /scripts
parenteac84e73e8d94610173c3bb3b6c6d74b58e44f60 (diff)
downloadpoky-05e6558514114dfc4608fc64cdfe29cf5e790976.tar.gz
resulttool/resultutils: Fix unicode error handling
This error handling didn't work as expected since upon failure it would inject bytestreams back into the code leading to tracebacks. Instead, ignore the decode errors. Fixes: Traceback (most recent call last): File "/home/pokybuild/yocto-worker/a-full/build/scripts/resulttool", line 78, in <module> sys.exit(main()) File "/home/pokybuild/yocto-worker/a-full/build/scripts/resulttool", line 72, in main ret = args.func(args, logger) File "/home/pokybuild/yocto-worker/a-full/build/scripts/lib/resulttool/store.py", line 70, in store resultutils.save_resultsdata(results, tempdir, ptestlogs=True) File "/home/pokybuild/yocto-worker/a-full/build/scripts/lib/resulttool/resultutils.py", line 178, in save_resultsdata f.write(sectionlog) TypeError: write() argument must be str, not bytes (From OE-Core rev: b63955977ebbf9fba291faa1b30c8dba9bd52869) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'scripts')
-rw-r--r--scripts/lib/resulttool/resultutils.py5
1 files changed, 1 insertions, 4 deletions
diff --git a/scripts/lib/resulttool/resultutils.py b/scripts/lib/resulttool/resultutils.py
index 7cb85a6aa9..3850a93f22 100644
--- a/scripts/lib/resulttool/resultutils.py
+++ b/scripts/lib/resulttool/resultutils.py
@@ -127,10 +127,7 @@ def decode_log(logdata):
127 data = logdata.get("compressed") 127 data = logdata.get("compressed")
128 data = base64.b64decode(data.encode("utf-8")) 128 data = base64.b64decode(data.encode("utf-8"))
129 data = zlib.decompress(data) 129 data = zlib.decompress(data)
130 try: 130 return data.decode("utf-8", errors='ignore')
131 return data.decode("utf-8")
132 except UnicodeDecodeError:
133 return data
134 return None 131 return None
135 132
136def ptestresult_get_log(results, section): 133def ptestresult_get_log(results, section):