summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThibault Saunier <tsaunier@igalia.com>2018-04-19 22:13:03 -0300
committerThibault Saunier <tsaunier@igalia.com>2018-05-13 09:44:17 -0400
commit78698808d2c874a39d6f3f4f9553fbc123265882 (patch)
tree7b70b01c2d208eb0481f39b4b4e2e94948415355
parent29e421ad0a136974e91bcf6a44834025e35058ef (diff)
debug-viewer: Ignore broken utf8 errors
Not much we can do if the input file is not perfectly valid UTF8 but we should just do as good as we can.
-rw-r--r--debug-viewer/GstDebugViewer/Data.py4
-rw-r--r--debug-viewer/GstDebugViewer/GUI/columns.py2
-rw-r--r--debug-viewer/GstDebugViewer/GUI/window.py2
3 files changed, 4 insertions, 4 deletions
diff --git a/debug-viewer/GstDebugViewer/Data.py b/debug-viewer/GstDebugViewer/Data.py
index 1499bf8..7962897 100644
--- a/debug-viewer/GstDebugViewer/Data.py
+++ b/debug-viewer/GstDebugViewer/Data.py
@@ -344,7 +344,7 @@ class LineCache (Producer):
yield True
offset = tell()
- line = readline().decode('utf-8')
+ line = readline().decode('utf-8', errors='replace')
if not line:
break
match = rexp_match(line)
@@ -384,7 +384,7 @@ class LogLine (list):
@classmethod
def parse_full(cls, line_string):
- match = cls._line_regex.match(line_string.decode('utf8'))
+ match = cls._line_regex.match(line_string.decode('utf8', errors='replace'))
if match is None:
# raise ValueError ("not a valid log line (%r)" % (line_string,))
groups = [0, 0, 0, 0, "", "", 0, "", "", 0]
diff --git a/debug-viewer/GstDebugViewer/GUI/columns.py b/debug-viewer/GstDebugViewer/GUI/columns.py
index 5467945..4346a63 100644
--- a/debug-viewer/GstDebugViewer/GUI/columns.py
+++ b/debug-viewer/GstDebugViewer/GUI/columns.py
@@ -346,7 +346,7 @@ class MessageColumn (TextColumn):
def message_data_func(column, cell, model, tree_iter, user_data):
- msg = model.get_value(tree_iter, id_).decode("utf8")
+ msg = model.get_value(tree_iter, id_).decode("utf8", errors="replace")
if not highlighters:
cell.props.text = msg
diff --git a/debug-viewer/GstDebugViewer/GUI/window.py b/debug-viewer/GstDebugViewer/GUI/window.py
index 6f67de6..7701ba6 100644
--- a/debug-viewer/GstDebugViewer/GUI/window.py
+++ b/debug-viewer/GstDebugViewer/GUI/window.py
@@ -690,7 +690,7 @@ class Window (object):
line_text = model.access_offset(line_offset).strip()
line_text = Data.strip_escape(line_text)
- self.clipboard.set_text(line_text.decode('utf8'), -1)
+ self.clipboard.set_text(line_text.decode('utf8', errors='replace'), -1)
@action
def handle_edit_copy_message_action_activate(self, action):