changeset 24510:5f597914cd01

Don't try to get info for MUC's. Allow getting info for regular JID's and room particpant JID's. Fixes #6648. committer: John Bailey <rekkanoryo@rekkanoryo.org>
author Paul Aurich <paul@darkrain42.org>
date Sat, 29 Nov 2008 19:35:13 +0000
parents 5cd0188892f6
children 915fdb649210
files ChangeLog libpurple/protocols/jabber/buddy.c
diffstat 2 files changed, 12 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Sat Nov 29 18:20:58 2008 +0000
+++ b/ChangeLog	Sat Nov 29 19:35:13 2008 +0000
@@ -25,6 +25,7 @@
 	* Gadu-Gadu now validates that UID's are valid (Adam Strzelecki)
 	* Gadu-Gadu now does proper charset translations where needed (Adam
 	  Strzelecki)
+	* Quit trying to get user info for XMPP MUC's (Paul Aurich)
 
 	Pidgin:
 	* On GTK+ 2.14 and higher, we're using the gtk-tooltip-delay setting
--- a/libpurple/protocols/jabber/buddy.c	Sat Nov 29 18:20:58 2008 +0000
+++ b/libpurple/protocols/jabber/buddy.c	Sat Nov 29 19:35:13 2008 +0000
@@ -1802,12 +1802,21 @@
 void jabber_buddy_get_info(PurpleConnection *gc, const char *who)
 {
 	JabberStream *js = gc->proto_data;
-	char *bare_jid = jabber_get_bare_jid(who);
+	JabberID *jid = jabber_id_new(who);
+
+	if (!jid)
+		return;
 
-	if(bare_jid) {
+	if (jabber_chat_find(js, jid->node, jid->domain)) {
+		/* For a conversation, include the resource (indicates the user). */
+		jabber_buddy_get_info_for_jid(js, who);
+	} else {
+		char *bare_jid = jabber_get_bare_jid(who);
 		jabber_buddy_get_info_for_jid(js, bare_jid);
 		g_free(bare_jid);
 	}
+
+	jabber_id_free(jid);
 }
 
 static void jabber_buddy_set_invisibility(JabberStream *js, const char *who,