comparison src/protocols/oscar/oscar.c @ 7166:e6b01bd8d6cd

[gaim-migrate @ 7733] I fixed the notify_added function, Chip had two of the variables swapped :-) I changed the way tlvlists are done in ssi.c a little bit. You can alias ICQ buddies that you don't have authorization for yet, and when you alias a buddy you will no longer lose any Buddy Alerts that may be set. Why is this? Previously tlvlists (data associated with each server stored item) were just deleted and recreated when you set an alias, or changed your permit/deny setting. Now the lists are modified and TLVs that libfaim doesn't know about are just left in place. Why did I wait so long to do this? I'm lazy, it's not really all that fun, and I don't consider it all that important. committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Sun, 05 Oct 2003 22:41:29 +0000
parents 7fadcbdcac29
children 895cd1d03efb
comparison
equal deleted inserted replaced
7165:a230b7bca1fb 7166:e6b01bd8d6cd
4791 for (curitem=sess->ssi.local; curitem; curitem=curitem->next) { 4791 for (curitem=sess->ssi.local; curitem; curitem=curitem->next) {
4792 switch (curitem->type) { 4792 switch (curitem->type) {
4793 case 0x0000: { /* Buddy */ 4793 case 0x0000: { /* Buddy */
4794 if (curitem->name) { 4794 if (curitem->name) {
4795 char *gname = aim_ssi_itemlist_findparentname(sess->ssi.local, curitem->name); 4795 char *gname = aim_ssi_itemlist_findparentname(sess->ssi.local, curitem->name);
4796 char *gname_utf8 = gaim_utf8_try_convert(gname); 4796 char *gname_utf8 = gname ? gaim_utf8_try_convert(gname) : NULL;
4797 char *alias = aim_ssi_getalias(sess->ssi.local, gname, curitem->name); 4797 char *alias = aim_ssi_getalias(sess->ssi.local, gname, curitem->name);
4798 char *alias_utf8 = gaim_utf8_try_convert(alias); 4798 char *alias_utf8 = alias ? gaim_utf8_try_convert(alias) : NULL;
4799 GaimBuddy *buddy = gaim_find_buddy(gc->account, curitem->name); 4799 GaimBuddy *buddy = gaim_find_buddy(gc->account, curitem->name);
4800 /* Should gname be freed here? -- elb */ 4800 /* Should gname be freed here? -- elb */
4801 /* Not with the current code, but that might be cleaner -- med */ 4801 /* Not with the current code, but that might be cleaner -- med */
4802 free(alias); 4802 free(alias);
4803 if (buddy) { 4803 if (buddy) {