summaryrefslogtreecommitdiff
path: root/telepathy-glib/channel-contacts.c
diff options
context:
space:
mode:
authorXavier Claessens <xavier.claessens@collabora.co.uk>2012-05-02 17:24:58 +0200
committerXavier Claessens <xavier.claessens@collabora.co.uk>2012-05-03 10:34:29 +0200
commitaa611fb0084b0c94f5e3b3c9c7e5ae30b8556c67 (patch)
treeec0bad40258d848c52c798cb805f87f768906e1f /telepathy-glib/channel-contacts.c
parent4a0739c2a00b833fdc3a312680686a87c49258a0 (diff)
downloadtelepathy-glib-aa611fb0084b0c94f5e3b3c9c7e5ae30b8556c67.tar.gz
Add tp_contact_is_self()
Diffstat (limited to 'telepathy-glib/channel-contacts.c')
-rw-r--r--telepathy-glib/channel-contacts.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/telepathy-glib/channel-contacts.c b/telepathy-glib/channel-contacts.c
index 6896a463c..dd65b0968 100644
--- a/telepathy-glib/channel-contacts.c
+++ b/telepathy-glib/channel-contacts.c
@@ -29,6 +29,7 @@
#define DEBUG_FLAG TP_DEBUG_GROUPS
#include "telepathy-glib/connection-internal.h"
+#include "telepathy-glib/contact-internal.h"
#include "telepathy-glib/debug-internal.h"
#include "telepathy-glib/util-internal.h"
@@ -211,6 +212,7 @@ _tp_channel_contacts_group_init (TpChannel *self,
self->priv->group_self_contact = dup_contact (self,
self->priv->group_self_handle, identifiers);
+ _tp_contact_set_is_self (self->priv->group_self_contact, TRUE);
self->priv->group_members_contacts = dup_contacts_table (self,
self->priv->group_members, identifiers);
@@ -751,6 +753,10 @@ self_contact_changed_prepared_cb (GObject *object,
_tp_channel_contacts_queue_prepare_finish (self, result, NULL, NULL);
+ if (self->priv->group_self_contact != NULL)
+ _tp_contact_set_is_self (self->priv->group_self_contact, FALSE);
+ _tp_contact_set_is_self (contact, TRUE);
+
g_clear_object (&self->priv->group_self_contact);
self->priv->group_self_contact = contact;