From: Richard Purdie Date: Wed, 4 Oct 2023 12:20:08 +0000 (+0100) Subject: qemurunner: Skip conversion from/to binary data for logfile X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b5d67471dddd198723c4f711747783a33e8e5987;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git qemurunner: Skip conversion from/to binary data for logfile There is no point in decoding binary data only to encode it again risking conversion issues. Write the raw data to the log file as binary and skip the conversion. Also always update self.msg even if a logfile isn't specified to improve logging/debug. Signed-off-by: Richard Purdie --- diff --git a/meta/lib/oeqa/utils/qemurunner.py b/meta/lib/oeqa/utils/qemurunner.py index 22cf258dddf..b8f51112861 100644 --- a/meta/lib/oeqa/utils/qemurunner.py +++ b/meta/lib/oeqa/utils/qemurunner.py @@ -115,10 +115,9 @@ class QemuRunner: def log(self, msg): if self.logfile: - msg = self.decode_qemulog(msg) - self.msg += msg - with codecs.open(self.logfile, "a", encoding="utf-8") as f: - f.write("%s" % msg) + with codecs.open(self.logfile, "ab") as f: + f.write(msg) + self.msg += self.decode_qemulog(msg) def getOutput(self, o): import fcntl