Bug 1404733 - Handle non-utf8 better in wpt logging, r=maja_zf
MozReview-Commit-ID: GMofBbKUtt0
--- a/testing/web-platform/tests/tools/wptrunner/wptrunner/wptlogging.py
+++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/wptlogging.py
@@ -71,17 +71,20 @@ class LoggingWrapper(StringIO):
def __init__(self, queue, prefix=None):
StringIO.__init__(self)
self.queue = queue
self.prefix = prefix
def write(self, data):
if isinstance(data, str):
- data = data.decode("utf8")
+ try:
+ data = data.decode("utf8")
+ except UnicodeDecodeError:
+ data = data.encode("string_escape").decode("ascii")
if data.endswith("\n"):
data = data[:-1]
if data.endswith("\r"):
data = data[:-1]
if not data:
return
if self.prefix is not None: