=================================================================== RCS file: /cvsroot/gaim/gaim/src/protocols/oscar/ssi.c,v retrieving revision 1.60.2.1 retrieving revision 1.60.2.3 diff -u -r1.60.2.1 -r1.60.2.3 --- gaim/gaim/src/protocols/oscar/ssi.c 2005/06/14 00:24:29 1.60.2.1 +++ gaim/gaim/src/protocols/oscar/ssi.c 2005/07/09 18:51:05 1.60.2.3 @@ -671,20 +671,18 @@ /* 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 */