tp-chat: remove butterfly MSN HandleType=NONE workaround
authorJonny Lamb <jonnylamb@gnome.org>
Wed, 10 Mar 2010 18:44:14 +0000 (18:44 +0000)
committerJonny Lamb <jonnylamb@gnome.org>
Thu, 11 Mar 2010 11:33:33 +0000 (11:33 +0000)
Newer versions of butterfly use the conference interface, so their 1-1
chats don't implement the group interface. This patch changes nothing
there, but now when butterfly gives a channel with
TargetHandleType=NONE, it is actually a MUC, so act like that.

Thanks to the addition of the conference interface with this change,
we can check for its presence to decide whether this is old-school or
new-school butterfly.

This commit and 13a7c40c together fix bug #612461.

Signed-off-by: Jonny Lamb <jonnylamb@gnome.org>
libempathy/empathy-tp-chat.c

index bba6733a6eafc0874296d905a0e4bcdbc3ac053d..7877acb22e1d7e09d895fb037ac08833194bd1a3 100644 (file)
@@ -885,6 +885,14 @@ tp_chat_update_remote_contact (EmpathyTpChat *chat)
                return;
        }
 
+       /* This is an MSN chat, but it's the new style where 1-1 chats don't
+        * have the group interface. If it has the conference interface, then
+        * it is indeed a MUC. */
+       if (tp_proxy_has_interface_by_id (priv->channel,
+                                         EMP_IFACE_QUARK_CHANNEL_INTERFACE_CONFERENCE)) {
+               return;
+       }
+
        /* This is an MSN-like chat where anyone can join the chat at anytime.
         * If there is only one non-self contact member, we are in a private
         * chat and we set the "remote-contact" property to that contact. If