# HG changeset patch # User Mark Doliner # Date 1177785167 0 # Node ID 9f6d974045e077b8777444e764b3a63329c6e652 # Parent 976a9b4c336aef7694e599b98b32210690a0c2a7# Parent 79c5daa011a2e3cc17edd5f868d39f6bbf04b774 merge of '1acd995dc3e2344ce39284792a212a2e4175f961' and '9babd54703e39c2b110b3103749d44a43979607e' diff -r 976a9b4c336a -r 9f6d974045e0 libpurple/protocols/oscar/family_feedbag.c --- a/libpurple/protocols/oscar/family_feedbag.c Sat Apr 28 18:09:26 2007 +0000 +++ b/libpurple/protocols/oscar/family_feedbag.c Sat Apr 28 18:32:47 2007 +0000 @@ -112,7 +112,7 @@ */ static struct aim_ssi_item *aim_ssi_itemlist_add(struct aim_ssi_item **list, const char *name, guint16 gid, guint16 bid, guint16 type, aim_tlvlist_t *data) { - int i; + gboolean exists; struct aim_ssi_item *cur, *new; new = (struct aim_ssi_item *)malloc(sizeof(struct aim_ssi_item)); @@ -131,34 +131,37 @@ if ((new->gid == 0xFFFF) && name) { do { new->gid += 0x0001; - for (cur=*list, i=0; ((cur) && (!i)); cur=cur->next) + exists = FALSE; + for (cur = *list; cur != NULL; cur = cur->next) if ((cur->type == AIM_SSI_TYPE_GROUP) && (cur->gid == new->gid)) { - i=1; + exists = TRUE; break; } - } while (i); + } while (exists); } } else if (new->gid == 0x0000) { if (new->bid == 0xFFFF) { do { new->bid += 0x0001; - for (cur=*list, i=0; ((cur) && (!i)); cur=cur->next) + exists = FALSE; + for (cur = *list; cur != NULL; cur = cur->next) if (((cur->bid == new->bid) && (cur->gid == new->gid)) || (cur->gid == new->bid)) { - i=1; + exists = TRUE; break; } - } while (i); + } while (exists); } } else { if (new->bid == 0xFFFF) { do { new->bid += 0x0001; - for (cur=*list, i=0; ((cur) && (!i)); cur=cur->next) + exists = FALSE; + for (cur = *list; cur != NULL; cur = cur->next) if ((cur->bid == new->bid) && (cur->gid == new->gid)) { - i=1; + exists = TRUE; break; } - } while (i); + } while (exists); } }