aboutsummaryrefslogtreecommitdiffstats
path: root/libempathy-gtk
diff options
context:
space:
mode:
Diffstat (limited to 'libempathy-gtk')
-rw-r--r--libempathy-gtk/empathy-contact-dialogs.c10
-rw-r--r--libempathy-gtk/gossip-contact-list-store.c2
-rw-r--r--libempathy-gtk/gossip-contact-list-view.c3
3 files changed, 7 insertions, 8 deletions
diff --git a/libempathy-gtk/empathy-contact-dialogs.c b/libempathy-gtk/empathy-contact-dialogs.c
index 051876940..7d1e2603a 100644
--- a/libempathy-gtk/empathy-contact-dialogs.c
+++ b/libempathy-gtk/empathy-contact-dialogs.c
@@ -70,14 +70,12 @@ subscription_dialog_response_cb (GtkDialog *dialog,
contact = empathy_contact_widget_get_contact (contact_widget);
if (response == GTK_RESPONSE_YES) {
- empathy_contact_list_add (EMPATHY_CONTACT_LIST (manager),
- contact,
- _("I would like to add you to my contact list."));
+ empathy_contact_list_process_pending (EMPATHY_CONTACT_LIST (manager),
+ contact, TRUE);
}
else if (response == GTK_RESPONSE_NO) {
- empathy_contact_list_remove (EMPATHY_CONTACT_LIST (manager),
- contact,
- _("Sorry, I don't want you in my contact list."));
+ empathy_contact_list_process_pending (EMPATHY_CONTACT_LIST (manager),
+ contact, FALSE);
}
subscription_dialogs = g_list_remove (subscription_dialogs, dialog);
diff --git a/libempathy-gtk/gossip-contact-list-store.c b/libempathy-gtk/gossip-contact-list-store.c
index 5c8393a1c..3db336a72 100644
--- a/libempathy-gtk/gossip-contact-list-store.c
+++ b/libempathy-gtk/gossip-contact-list-store.c
@@ -410,7 +410,7 @@ gossip_contact_list_store_set_show_offline (GossipContactListStore *store,
contact = GOSSIP_CONTACT (l->data);
contact_list_store_contact_update (store, contact);
-
+
g_object_unref (contact);
}
g_list_free (contacts);
diff --git a/libempathy-gtk/gossip-contact-list-view.c b/libempathy-gtk/gossip-contact-list-view.c
index 8b42ab18e..5c3fd274d 100644
--- a/libempathy-gtk/gossip-contact-list-view.c
+++ b/libempathy-gtk/gossip-contact-list-view.c
@@ -1387,14 +1387,15 @@ contact_list_view_filter_show_group (GossipContactListView *view,
contacts = empathy_contact_list_get_members (list);
for (l = contacts; l && !show_group; l = l->next) {
if (!gossip_contact_is_in_group (l->data, group)) {
+ g_object_unref (l->data);
continue;
}
if (contact_list_view_filter_show_contact (l->data, filter)) {
show_group = TRUE;
}
+ g_object_unref (l->data);
}
- g_list_foreach (contacts, (GFunc) g_object_unref, NULL);
g_list_free (contacts);
g_free (str);