aboutsummaryrefslogtreecommitdiffstats
path: root/libempathy
diff options
context:
space:
mode:
authorJonny Lamb <jonnylamb@gnome.org>2010-03-11 02:44:14 +0800
committerJonny Lamb <jonnylamb@gnome.org>2010-03-11 19:33:33 +0800
commit2a98cb3d4f7222097b4ec2f5343244d1b313eac1 (patch)
treecec37dada92aaf3f776411a65fcd87b5cdc52c90 /libempathy
parent13a7c40c5aaf9b6ff9d75073775472f413959033 (diff)
downloadgsoc2013-empathy-2a98cb3d4f7222097b4ec2f5343244d1b313eac1.tar
gsoc2013-empathy-2a98cb3d4f7222097b4ec2f5343244d1b313eac1.tar.gz
gsoc2013-empathy-2a98cb3d4f7222097b4ec2f5343244d1b313eac1.tar.bz2
gsoc2013-empathy-2a98cb3d4f7222097b4ec2f5343244d1b313eac1.tar.lz
gsoc2013-empathy-2a98cb3d4f7222097b4ec2f5343244d1b313eac1.tar.xz
gsoc2013-empathy-2a98cb3d4f7222097b4ec2f5343244d1b313eac1.tar.zst
gsoc2013-empathy-2a98cb3d4f7222097b4ec2f5343244d1b313eac1.zip
tp-chat: remove butterfly MSN HandleType=NONE workaround
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>
Diffstat (limited to 'libempathy')
-rw-r--r--libempathy/empathy-tp-chat.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/libempathy/empathy-tp-chat.c b/libempathy/empathy-tp-chat.c
index bba6733a6..7877acb22 100644
--- a/libempathy/empathy-tp-chat.c
+++ b/libempathy/empathy-tp-chat.c
@@ -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