[Telepathy-commits] [telepathy-gabble/master] Consider the self handle to be owned by the connection's self handle, even if the MUC service doesn't explicitly say so

Simon McVittie simon.mcvittie at collabora.co.uk
Tue Aug 19 10:53:03 PDT 2008


20080526162641-53eee-f976b373b5d036a03fbd97be58fd55d1a560471a.gz
---
 src/gabble-muc-channel.c |   14 ++++++++++++++
 1 files changed, 14 insertions(+), 0 deletions(-)

diff --git a/src/gabble-muc-channel.c b/src/gabble-muc-channel.c
index 09d1258..6e39978 100644
--- a/src/gabble-muc-channel.c
+++ b/src/gabble-muc-channel.c
@@ -1694,6 +1694,20 @@ _gabble_muc_channel_member_presence_updated (GabbleMucChannel *chan,
                     owner_jid);
             }
 
+          if (handle == mixin->self_handle &&
+              owner_handle != conn->self_handle)
+            {
+              DEBUG ("Overriding ownership of channel-specific handle %u "
+                  "from %u to %u because I know it's mine",
+                  mixin->self_handle, owner_handle, conn->self_handle);
+
+              if (owner_handle != 0)
+                tp_handle_unref (contact_handles, owner_handle);
+
+              tp_handle_ref (contact_handles, conn->self_handle);
+              owner_handle = conn->self_handle;
+            }
+
           if (priv->initial_state_aggregator == NULL)
             {
               /* we've already had the initial batch of presence stanzas */
-- 
1.5.6.3




More information about the Telepathy-commits mailing list