aboutsummaryrefslogtreecommitdiffstats
path: root/libempathy-gtk/empathy-account-widget.c
diff options
context:
space:
mode:
authorCosimo Cecchi <cosimoc@gnome.org>2009-07-30 05:38:00 +0800
committerCosimo Cecchi <cosimoc@gnome.org>2009-07-30 06:13:21 +0800
commitc8fc859d6d2bda4110e0dcb5fa4e213162d1c1c4 (patch)
tree5f7cc2d6c39015d7eb80d0764f9d8256ea323426 /libempathy-gtk/empathy-account-widget.c
parent25ee209b2d033ca91f23a818636926285030945d (diff)
downloadgsoc2013-empathy-c8fc859d6d2bda4110e0dcb5fa4e213162d1c1c4.tar
gsoc2013-empathy-c8fc859d6d2bda4110e0dcb5fa4e213162d1c1c4.tar.gz
gsoc2013-empathy-c8fc859d6d2bda4110e0dcb5fa4e213162d1c1c4.tar.bz2
gsoc2013-empathy-c8fc859d6d2bda4110e0dcb5fa4e213162d1c1c4.tar.lz
gsoc2013-empathy-c8fc859d6d2bda4110e0dcb5fa4e213162d1c1c4.tar.xz
gsoc2013-empathy-c8fc859d6d2bda4110e0dcb5fa4e213162d1c1c4.tar.zst
gsoc2013-empathy-c8fc859d6d2bda4110e0dcb5fa4e213162d1c1c4.zip
Hook up to the destroy signal in EmpathyAccountWidget
Diffstat (limited to 'libempathy-gtk/empathy-account-widget.c')
-rw-r--r--libempathy-gtk/empathy-account-widget.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/libempathy-gtk/empathy-account-widget.c b/libempathy-gtk/empathy-account-widget.c
index 5cfff21d9..2b6439f1d 100644
--- a/libempathy-gtk/empathy-account-widget.c
+++ b/libempathy-gtk/empathy-account-widget.c
@@ -708,6 +708,13 @@ account_widget_build_groupwise (EmpathyAccountWidget *self,
}
static void
+account_widget_destroy_cb (GtkWidget *widget,
+ EmpathyAccountWidget *self)
+{
+ g_object_unref (self);
+}
+
+static void
do_set_property (GObject *object,
guint prop_id,
const GValue *value,
@@ -832,6 +839,10 @@ do_constructed (GObject *obj)
account_widget_handle_apply_sensitivity (self);
gtk_widget_show (priv->apply_button);
+ /* hook up to widget destruction to unref ourselves */
+ g_signal_connect (self->ui_details->widget, "destroy",
+ G_CALLBACK (account_widget_destroy_cb), self);
+
empathy_builder_unref_and_keep_widget (self->ui_details->gui, self->ui_details->widget);
}