]> git.0d.be Git - empathy.git/blobdiff - libempathy/empathy-tp-contact-list.c
Remove user from the blocked list when readding them
[empathy.git] / libempathy / empathy-tp-contact-list.c
index 90932a20a7b5bfd4b9a79114f488a821e04d8013..30fb4a2d5bc936a6549a531678ce14f21671c9fe 100644 (file)
@@ -1121,10 +1121,12 @@ tp_contact_list_add (EmpathyContactList *list,
        GArray handles = {(gchar *) &handle, 1};
 
        handle = empathy_contact_get_handle (contact);
+
        if (priv->subscribe) {
                tp_cli_channel_interface_group_call_add_members (priv->subscribe,
                        -1, &handles, message, NULL, NULL, NULL, NULL);
        }
+
        if (priv->publish) {
                TpChannelGroupFlags flags = tp_channel_group_get_flags (priv->subscribe);
                if (flags & TP_CHANNEL_GROUP_FLAG_CAN_ADD ||
@@ -1133,6 +1135,12 @@ tp_contact_list_add (EmpathyContactList *list,
                                -1, &handles, message, NULL, NULL, NULL, NULL);
                }
        }
+
+       if (priv->deny) {
+               tp_cli_channel_interface_group_call_remove_members (
+                       priv->deny, -1, &handles, message,
+                       NULL, NULL, NULL, NULL);
+       }
 }
 
 static void