summaryrefslogtreecommitdiff
path: root/telepathy-glib/group-mixin.c
diff options
context:
space:
mode:
authorSimon McVittie <simon.mcvittie@collabora.co.uk>2010-05-21 12:24:46 +0100
committerSimon McVittie <simon.mcvittie@collabora.co.uk>2010-05-21 13:45:35 +0100
commitfd03202eb180c6ac40f3786a7059c8340b78d91d (patch)
treebcb979e73361f405902567e410a8e04fd7916305 /telepathy-glib/group-mixin.c
parentf6bedc909d885a5c67368de79a040e62078b7287 (diff)
downloadtelepathy-glib-fd03202eb180c6ac40f3786a7059c8340b78d91d.tar.gz
TpGroupMixin: allow no-op AddMembers for members, even without CAN_ADD
The spec says "Attempting to add contacts who are already members is allowed; connection managers must silently accept this, without error."
Diffstat (limited to 'telepathy-glib/group-mixin.c')
-rw-r--r--telepathy-glib/group-mixin.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/telepathy-glib/group-mixin.c b/telepathy-glib/group-mixin.c
index 91cf46e5b..b21c95973 100644
--- a/telepathy-glib/group-mixin.c
+++ b/telepathy-glib/group-mixin.c
@@ -555,6 +555,7 @@ tp_group_mixin_add_members (GObject *obj,
handle = g_array_index (contacts, TpHandle, i);
if ((mixin->group_flags & TP_CHANNEL_GROUP_FLAG_CAN_ADD) == 0 &&
+ !tp_handle_set_is_member (mixin->members, handle) &&
!tp_handle_set_is_member (mixin->local_pending, handle))
{
DEBUG ("handle %u cannot be added to members without "