[gnome-builder] project-tree: disconnect signal during cleanup
- From: Christian Hergert <chergert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-builder] project-tree: disconnect signal during cleanup
- Date: Fri, 20 May 2016 09:18:08 +0000 (UTC)
commit 322f76fefb5cceae3ec92069a4c2bbeb870b6d11
Author: Christian Hergert <chergert redhat com>
Date: Fri May 20 12:17:51 2016 +0300
project-tree: disconnect signal during cleanup
Not really necessary, but good form.
plugins/project-tree/gb-project-tree-addin.c | 10 ++++++++++
1 files changed, 10 insertions(+), 0 deletions(-)
---
diff --git a/plugins/project-tree/gb-project-tree-addin.c b/plugins/project-tree/gb-project-tree-addin.c
index 6c93dfe..87a9177 100644
--- a/plugins/project-tree/gb-project-tree-addin.c
+++ b/plugins/project-tree/gb-project-tree-addin.c
@@ -97,6 +97,7 @@ gb_project_tree_addin_load (IdeWorkbenchAddin *addin,
"headers-visible", FALSE,
"visible", TRUE,
NULL);
+ g_object_add_weak_pointer (G_OBJECT (self->tree), (gpointer *)&self->tree);
gtk_container_add (GTK_CONTAINER (scroller), GTK_WIDGET (self->tree));
self->panel = g_object_new (PNL_TYPE_DOCK_WIDGET,
@@ -121,6 +122,15 @@ gb_project_tree_addin_unload (IdeWorkbenchAddin *addin,
g_assert (IDE_IS_WORKBENCH_ADDIN (self));
g_assert (IDE_IS_WORKBENCH (workbench));
+ if (self->tree != NULL)
+ {
+ g_signal_handlers_disconnect_by_func (self->tree,
+ G_CALLBACK (gb_project_tree_addin_grid_empty),
+ self);
+ g_object_remove_weak_pointer (G_OBJECT (self->tree), (gpointer *)&self->tree);
+ self->tree = NULL;
+ }
+
gtk_widget_destroy (self->panel);
self->panel = NULL;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]