diff options
author | Thibault Saunier <tsaunier@igalia.com> | 2018-04-19 22:13:03 -0300 |
---|---|---|
committer | Thibault Saunier <tsaunier@igalia.com> | 2018-05-13 09:44:17 -0400 |
commit | 78698808d2c874a39d6f3f4f9553fbc123265882 (patch) | |
tree | 7b70b01c2d208eb0481f39b4b4e2e94948415355 | |
parent | 29e421ad0a136974e91bcf6a44834025e35058ef (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.py | 4 | ||||
-rw-r--r-- | debug-viewer/GstDebugViewer/GUI/columns.py | 2 | ||||
-rw-r--r-- | debug-viewer/GstDebugViewer/GUI/window.py | 2 |
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): |