[gnome-builder] symbol-tree: robustness improvements
- From: Christian Hergert <chergert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-builder] symbol-tree: robustness improvements
- Date: Fri, 6 Mar 2020 18:50:45 +0000 (UTC)
commit 774502be399a4768241ae15507bcbdd0481bd5f2
Author: Christian Hergert <chergert redhat com>
Date: Fri Mar 6 10:50:15 2020 -0800
symbol-tree: robustness improvements
Just be sure we have what we think we're working with to avoid casting
to other page types.
Related: !256
src/plugins/symbol-tree/gbp-symbol-frame-addin.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
---
diff --git a/src/plugins/symbol-tree/gbp-symbol-frame-addin.c
b/src/plugins/symbol-tree/gbp-symbol-frame-addin.c
index 3cc70004f..ee0d13379 100644
--- a/src/plugins/symbol-tree/gbp-symbol-frame-addin.c
+++ b/src/plugins/symbol-tree/gbp-symbol-frame-addin.c
@@ -185,6 +185,7 @@ gbp_symbol_frame_addin_cursor_moved (GbpSymbolFrameAddin *self,
const GtkTextIter *location,
IdeBuffer *buffer)
{
+ IdeSourceView *view;
GSource *source;
gint64 ready_time;
@@ -192,7 +193,11 @@ gbp_symbol_frame_addin_cursor_moved (GbpSymbolFrameAddin *self,
g_assert (location != NULL);
g_assert (IDE_IS_BUFFER (buffer));
- if (!gtk_widget_has_focus (GTK_WIDGET (ide_editor_page_get_view (IDE_EDITOR_PAGE (self->page)))))
+ if (!IDE_IS_EDITOR_PAGE (self->page))
+ return;
+
+ view = ide_editor_page_get_view (IDE_EDITOR_PAGE (self->page));
+ if (!gtk_widget_has_focus (GTK_WIDGET (view)))
return;
if (self->cursor_moved_handler == 0)
@@ -509,6 +514,8 @@ gbp_symbol_frame_addin_unload (IdeFrameAddin *addin,
g_assert (GBP_IS_SYMBOL_FRAME_ADDIN (self));
g_assert (IDE_IS_FRAME (stack));
+ self->page = NULL;
+
gtk_widget_insert_action_group (GTK_WIDGET (stack), "symbol-tree", NULL);
g_cancellable_cancel (self->cancellable);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]