From babc18c36e3af7954d9a11a147c29db717473040 Mon Sep 17 00:00:00 2001 From: Colin Kinloch Date: Mon, 25 Sep 2023 16:00:39 +0100 Subject: [PATCH] debug-viewer: Fix crash from unpacking NoneType objects Part-of: --- .../debug-viewer/GstDebugViewer/GUI/window.py | 5 +++- .../GstDebugViewer/Plugins/FindBar.py | 25 +++++++++++++++---- 2 files changed, 24 insertions(+), 6 deletions(-) diff --git a/subprojects/gst-devtools/debug-viewer/GstDebugViewer/GUI/window.py b/subprojects/gst-devtools/debug-viewer/GstDebugViewer/GUI/window.py index 43ed9c0810..db0ef30536 100644 --- a/subprojects/gst-devtools/debug-viewer/GstDebugViewer/GUI/window.py +++ b/subprojects/gst-devtools/debug-viewer/GstDebugViewer/GUI/window.py @@ -532,7 +532,10 @@ class Window (object): view = self.log_view model = view.get_model() - start_path, end_path = view.get_visible_range() + visible_range = view.get_visible_range() + if visible_range is None: + return + start_path, end_path = visible_range start_index, end_index = start_path[0], end_path[0] for line_index in range(start_index, end_index + 1): diff --git a/subprojects/gst-devtools/debug-viewer/GstDebugViewer/Plugins/FindBar.py b/subprojects/gst-devtools/debug-viewer/GstDebugViewer/Plugins/FindBar.py index 151773fceb..76ec0a65d5 100644 --- a/subprojects/gst-devtools/debug-viewer/GstDebugViewer/Plugins/FindBar.py +++ b/subprojects/gst-devtools/debug-viewer/GstDebugViewer/Plugins/FindBar.py @@ -245,7 +245,10 @@ class FindBarFeature (FeatureBase): path = Gtk.TreePath((line_index,)) - start_path, end_path = view.get_visible_range() + visible_range = view.get_visible_range() + if visible_range is None: + return + start_path, end_path = visible_range if path >= start_path and path <= end_path: self.logger.debug( @@ -330,7 +333,10 @@ class FindBarFeature (FeatureBase): self.scroll_view_to_line(self.prev_match) self.prev_match = None - start_path = self.log_view.get_visible_range()[0] + visible_range = self.log_view.get_visible_range() + if visible_range is None: + return + start_path = visible_range[0] new_position = start_path[0] - 1 self.start_search_operation(start_position=new_position, forward=False) @@ -346,7 +352,10 @@ class FindBarFeature (FeatureBase): self.scroll_view_to_line(self.next_match) self.next_match = None - end_path = self.log_view.get_visible_range()[1] + visible_range = self.log_view.get_visible_range() + if visible_range is None: + return + end_path = visible_range[1] new_position = end_path[0] + 1 self.start_search_operation(start_position=new_position, forward=True) @@ -354,7 +363,10 @@ class FindBarFeature (FeatureBase): # model = self.log_view.get_model () - # start_path, end_path = self.log_view.get_visible_range () + # visible_range = self.log_view.get_visible_range() + # if visible_range is None: + # return + # start_path, end_path = visible_range # start_index, end_index = start_path[0], end_path[0] # for line_index in self.matches: @@ -392,7 +404,10 @@ class FindBarFeature (FeatureBase): self.update_sensitivity() self.scroll_match = True - start_path = self.log_view.get_visible_range()[0] + visible_range = self.log_view.get_visible_range() + if visible_range is None: + return + start_path = visible_range[0] self.start_search_operation( search_text, start_position=start_path[0]) self.bar.status_searching()