[oe-commits] [openembedded-core] branch master updated: resulttool/resultutils: Fix unicode error handling

git at git.openembedded.org git at git.openembedded.org
Sat Feb 15 17:26:33 UTC 2020


This is an automated email from the git hooks/post-receive script.

rpurdie pushed a commit to branch master
in repository openembedded-core.

The following commit(s) were added to refs/heads/master by this push:
     new 3aa0d0f  resulttool/resultutils: Fix unicode error handling
3aa0d0f is described below

commit 3aa0d0fd0bbf8c9c13719251a2fd1e85a22c7336
Author: Richard Purdie <richard.purdie at linuxfoundation.org>
AuthorDate: Sat Feb 15 17:23:54 2020 +0000

    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
    
    Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
 scripts/lib/resulttool/resultutils.py | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/scripts/lib/resulttool/resultutils.py b/scripts/lib/resulttool/resultutils.py
index f0ae8ec..5fec01f 100644
--- a/scripts/lib/resulttool/resultutils.py
+++ b/scripts/lib/resulttool/resultutils.py
@@ -127,10 +127,7 @@ def decode_log(logdata):
             data = logdata.get("compressed")
             data = base64.b64decode(data.encode("utf-8"))
             data = zlib.decompress(data)
-            try:
-                return data.decode("utf-8")
-            except UnicodeDecodeError:
-                return data
+            return data.decode("utf-8", errors='ignore')
     return None
 
 def ptestresult_get_log(results, section):

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


More information about the Openembedded-commits mailing list