aboutsummaryrefslogtreecommitdiffstats
path: root/libempathy-gtk
diff options
context:
space:
mode:
authorGuillaume Desmottes <guillaume.desmottes@collabora.co.uk>2011-02-03 18:02:35 +0800
committerGuillaume Desmottes <guillaume.desmottes@collabora.co.uk>2011-02-03 18:44:00 +0800
commit175dcba889d04e5322047611c33eefbeab153017 (patch)
treeb6e7b795f3a70c92ee5cd697b5f7b3c9be1efe3a /libempathy-gtk
parent087abca96d4dcf3a00eeab826678060090656cb4 (diff)
downloadgsoc2013-empathy-175dcba889d04e5322047611c33eefbeab153017.tar
gsoc2013-empathy-175dcba889d04e5322047611c33eefbeab153017.tar.gz
gsoc2013-empathy-175dcba889d04e5322047611c33eefbeab153017.tar.bz2
gsoc2013-empathy-175dcba889d04e5322047611c33eefbeab153017.tar.lz
gsoc2013-empathy-175dcba889d04e5322047611c33eefbeab153017.tar.xz
gsoc2013-empathy-175dcba889d04e5322047611c33eefbeab153017.tar.zst
gsoc2013-empathy-175dcba889d04e5322047611c33eefbeab153017.zip
individual-menu: ensure that the contact stays alive while the activate signal is connected (#641119)
Diffstat (limited to 'libempathy-gtk')
-rw-r--r--libempathy-gtk/empathy-individual-menu.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/libempathy-gtk/empathy-individual-menu.c b/libempathy-gtk/empathy-individual-menu.c
index d90e57e81..2a578a09f 100644
--- a/libempathy-gtk/empathy-individual-menu.c
+++ b/libempathy-gtk/empathy-individual-menu.c
@@ -460,8 +460,10 @@ menu_item_set_contact (GtkWidget *item,
if (can_do_action == TRUE)
{
- g_signal_connect (item, "activate", G_CALLBACK (activate_callback),
- contact);
+ /* We want to make sure that the EmpathyContact stays alive while the
+ * signal is connected. */
+ g_signal_connect_data (item, "activate", G_CALLBACK (activate_callback),
+ g_object_ref (contact), (GClosureNotify) g_object_unref, 0);
}
return can_do_action;