src/protocols/oscar/ssi.c

changeset 11072
81795df0687c
parent 11005
06c22b605323
child 11792
427bc56b77bf
--- a/src/protocols/oscar/ssi.c	Fri Jul 08 06:47:24 2005 +0000
+++ b/src/protocols/oscar/ssi.c	Sat Jul 09 18:54:43 2005 +0000
@@ -671,20 +671,19 @@
 	/* Make sure there aren't any duplicate buddies in a group, or duplicate permits or denies */
 	cur = sess->ssi.local;
 	while (cur) {
-		next = cur->next;
 		if ((cur->type == AIM_SSI_TYPE_BUDDY) || (cur->type == AIM_SSI_TYPE_PERMIT) || (cur->type == AIM_SSI_TYPE_DENY))
 		{
 			struct aim_ssi_item *cur2, *next2;
-			cur2 = next;
+			cur2 = cur->next;
 			while (cur2) {
 				next2 = cur2->next;
-				if ((cur->type == cur2->type) && (cur->gid == cur2->gid) && (!strcmp(cur->name, cur2->name))) {
+				if ((cur->type == cur2->type) && (cur->gid == cur2->gid) && (cur->name != NULL) && (cur2->name != NULL) && (!strcmp(cur->name, cur2->name))) {
 					aim_ssi_itemlist_del(&sess->ssi.local, cur2);
 				}
 				cur2 = next2;
 			}
 		}
-		cur = next;
+		cur = cur->next;
 	}
 
 	/* Check if there are empty groups and delete them */

mercurial