diff src/protocols/jabber/message.c @ 7306:7c12dab8e513

[gaim-migrate @ 7890] this should implement the full nodeprep, nameprep, and resourceprep string profiles, so we compare JIDs correctly committer: Tailor Script <tailor@pidgin.im>
author Nathan Walp <nwalp@pidgin.im>
date Mon, 20 Oct 2003 20:41:42 +0000
parents 1930e3d00ecd
children dd4b4a187171
line wrap: on
line diff
--- a/src/protocols/jabber/message.c	Mon Oct 20 05:08:05 2003 +0000
+++ b/src/protocols/jabber/message.c	Mon Oct 20 20:41:42 2003 +0000
@@ -79,7 +79,7 @@
 	JabberBuddyResource *jbr;
 
 	jb = jabber_buddy_find(jm->js, jm->from, TRUE);
-	jbr = jabber_buddy_find_resource(jb, jabber_get_resource(jm->from));
+	jbr = jabber_buddy_find_resource(jb, jid->resource);
 
 	if(find_unnormalized_conv(jm->from, jm->js->gc->account)) {
 		from = g_strdup(jm->from);
@@ -174,7 +174,7 @@
 				jm->subject);
 
 	if(jm->xhtml || jm->body)
-		serv_got_chat_in(jm->js->gc, chat->id, jabber_get_resource(jm->from),
+		serv_got_chat_in(jm->js->gc, chat->id, jid->resource,
 				0, jm->xhtml ? jm->xhtml : jm->body, jm->sent);
 	jabber_id_free(jid);
 }
@@ -412,12 +412,17 @@
 	JabberBuddyResource *jbr;
 	char *buf;
 	char *xhtml;
+	char *resource;
 
 	if(!who || !msg)
 		return 0;
 
+	resource = jabber_get_resource(who);
+
 	jb = jabber_buddy_find(gc->proto_data, who, TRUE);
-	jbr = jabber_buddy_find_resource(jb, jabber_get_resource(who));
+	jbr = jabber_buddy_find_resource(jb, resource);
+
+	g_free(resource);
 
 	jm = g_new0(JabberMessage, 1);
 	jm->js = gc->proto_data;
@@ -468,9 +473,12 @@
 	JabberMessage *jm;
 	JabberBuddy *jb;
 	JabberBuddyResource *jbr;
+	char *resource = jabber_get_resource(who);
 
 	jb = jabber_buddy_find(gc->proto_data, who, TRUE);
-	jbr = jabber_buddy_find_resource(jb, jabber_get_resource(who));
+	jbr = jabber_buddy_find_resource(jb, resource);
+
+	g_free(resource);
 
 	if(!jbr || !(jbr->capabilities & JABBER_CAP_COMPOSING))
 		return 0;