im.pidgin.pidgin: b7a2c4d81867c3bbd262c2a4b1d924ea7fd3afb6
datallah at pidgin.im
datallah at pidgin.im
Mon Oct 8 16:50:37 EDT 2007
revision: b7a2c4d81867c3bbd262c2a4b1d924ea7fd3afb6
date: 2007-10-08T20:46:00
author: datallah at pidgin.im
branch: im.pidgin.pidgin
changelog:
Fix a couple leaks in parsing the xmpp roster.
manifest:
format_version "1"
new_manifest [dd73c9028d0d6635cc3d655a07cfdb43e1e5f1fe]
old_revision [703c3f9437d5e71255819c747f9690d19c6ba6e3]
patch "libpurple/protocols/jabber/roster.c"
from [04ce5d39a1366a2d6ce250ea42e9b74647324748]
to [1336b167453dd68892ff6a002d454e75ff6f166e]
-------------- next part --------------
============================================================
--- libpurple/protocols/jabber/roster.c 04ce5d39a1366a2d6ce250ea42e9b74647324748
+++ libpurple/protocols/jabber/roster.c 1336b167453dd68892ff6a002d454e75ff6f166e
@@ -229,6 +229,11 @@ void jabber_roster_parse(JabberStream *j
remove_purple_buddies(js, jid);
} else {
GSList *groups = NULL;
+
+ if (js->server_caps & JABBER_CAP_GOOGLE_ROSTER)
+ if (!jabber_google_roster_incoming(js, item))
+ continue;
+
for(group = xmlnode_get_child(item, "group"); group; group = xmlnode_get_next_twin(group)) {
char *group_name;
@@ -237,10 +242,9 @@ void jabber_roster_parse(JabberStream *j
if (g_slist_find_custom(groups, group_name, (GCompareFunc)purple_utf8_strcasecmp) == NULL)
groups = g_slist_append(groups, group_name);
+ else
+ g_free(group_name);
}
- if (js->server_caps & JABBER_CAP_GOOGLE_ROSTER)
- if (!jabber_google_roster_incoming(js, item))
- continue;
add_purple_buddies_to_groups(js, jid, name, groups);
}
}
More information about the Commits
mailing list