diff src/protocols/jabber/roster.c @ 13807:a415805c7456

[gaim-migrate @ 16232] Don Seiler submitted this patch to bug #1426339. It compensates for a jabber server error where some broken servers send more than one group name with a buddy. Or something like that. In any case, the server was broken and Gaim didn't handle it very gracefully, and it's a one-line fix. committer: Tailor Script <tailor@pidgin.im>
author Ethan Blanton <elb@pidgin.im>
date Thu, 08 Jun 2006 04:27:04 +0000
parents af257d8679fe
children 60f39c405dff
line wrap: on
line diff
--- a/src/protocols/jabber/roster.c	Thu Jun 08 01:03:51 2006 +0000
+++ b/src/protocols/jabber/roster.c	Thu Jun 08 04:27:04 2006 +0000
@@ -21,6 +21,7 @@
 #include "internal.h"
 #include "debug.h"
 #include "server.h"
+#include "util.h"
 
 #include "buddy.h"
 #include "presence.h"
@@ -202,7 +203,9 @@
 
 				if(!(group_name = xmlnode_get_data(group)))
 					group_name = g_strdup("");
-				groups = g_slist_append(groups, group_name);
+
+				if (g_slist_find_custom(groups, group_name, (GCompareFunc)gaim_utf8_strcasecmp) == NULL)
+					groups = g_slist_append(groups, group_name);
 			}
 			add_gaim_buddies_in_groups(js, jid, name, groups);
 		}