# HG changeset patch # User Daniel Atallah # Date 1191889556 0 # Node ID 3de6fbc791343e59edca4c82dc430de9a5cadbc3 # Parent 6b9e5bbab0fedbbc8699e92576309c89ec6565aa Another couple leak fixes in the xmpp roster parsing. diff -r 6b9e5bbab0fe -r 3de6fbc79134 libpurple/protocols/jabber/roster.c --- a/libpurple/protocols/jabber/roster.c Tue Oct 09 00:24:45 2007 +0000 +++ b/libpurple/protocols/jabber/roster.c Tue Oct 09 00:25:56 2007 +0000 @@ -67,8 +67,10 @@ if(!groups) { if(!buddies) g2 = g_slist_append(g2, g_strdup(_("Buddies"))); - else + else { + g_slist_free(buddies); return; + } } my_bare_jid = g_strdup_printf("%s@%s", js->user->node, js->user->domain); @@ -267,6 +269,9 @@ JabberIq *iq; xmlnode *query, *item, *group; + if(!(b = purple_find_buddy(js->gc->account, name))) + return; + if(grps) { groups = grps; } else { @@ -281,9 +286,6 @@ } } - if(!(b = purple_find_buddy(js->gc->account, name))) - return; - iq = jabber_iq_new_query(js, JABBER_IQ_SET, "jabber:iq:roster"); query = xmlnode_get_child(iq->node, "query");