aboutsummaryrefslogtreecommitdiffstats
path: root/meta/lib/oeqa/core/target/ssh.py
diff options
context:
space:
mode:
authorRobert Yang <liezhi.yang@windriver.com>2017-08-21 18:23:10 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-08-23 14:12:39 +0100
commitd0d2f892f0bed6adb5ec6fb59d64efcc97c83e19 (patch)
treeabe423e8a825184e03157ea07a29dd5fdbb8c4cd /meta/lib/oeqa/core/target/ssh.py
parent320ea01f9eb33df462534bf08488ff6ada9bbe7b (diff)
downloadopenembedded-core-contrib-d0d2f892f0bed6adb5ec6fb59d64efcc97c83e19.tar.gz
core/target/ssh.py: replace decode errors
There might be wild strings when read from target (especially when reading ptest results), replace the errors to avoid breaking the test. Fixed: (Not always happen) $ bitbake core-image-sato -ctestimage [snip] status, output = self.target.run('ptest-runner', 0) File "/buildarea/lyang1/poky/meta/lib/oeqa/core/target/ssh.py", line 84, in run status, output = self._run(sshCmd, processTimeout, True) File "/buildarea/lyang1/poky/meta/lib/oeqa/core/target/ssh.py", line 55, in _run status, output = SSHCall(command, self.logger, timeout) File "/buildarea/lyang1/poky/meta/lib/oeqa/core/target/ssh.py", line 258, in SSHCall run() File "/buildarea/lyang1/poky/meta/lib/oeqa/core/target/ssh.py", line 236, in run output = process.communicate()[0].decode("utf-8") UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc3 in position 4906: invalid continuation byte [YOCTO #11547] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/lib/oeqa/core/target/ssh.py')
-rw-r--r--meta/lib/oeqa/core/target/ssh.py4
1 files changed, 2 insertions, 2 deletions
diff --git a/meta/lib/oeqa/core/target/ssh.py b/meta/lib/oeqa/core/target/ssh.py
index b80939c0e5..a2eafcd6f2 100644
--- a/meta/lib/oeqa/core/target/ssh.py
+++ b/meta/lib/oeqa/core/target/ssh.py
@@ -211,7 +211,7 @@ def SSHCall(command, logger, timeout=None, **opts):
process.stdout.close()
eof = True
else:
- data = data.decode("utf-8")
+ data = data.decode("utf-8", errors='replace')
output += data
logger.debug('Partial data from SSH call: %s' % data)
endtime = time.time() + timeout
@@ -233,7 +233,7 @@ def SSHCall(command, logger, timeout=None, **opts):
output += lastline
else:
- output = process.communicate()[0].decode("utf-8")
+ output = process.communicate()[0].decode("utf-8", errors='replace')
logger.debug('Data from SSH call: %s' % output.rstrip())
options = {