aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libempathy/empathy-tp-contact-list.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/libempathy/empathy-tp-contact-list.c b/libempathy/empathy-tp-contact-list.c
index 90932a20a..30fb4a2d5 100644
--- a/libempathy/empathy-tp-contact-list.c
+++ b/libempathy/empathy-tp-contact-list.c
@@ -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