comparison src/buddyicon.c @ 11423:202a3b3c5a88

[gaim-migrate @ 13660] Jason LeBrun asked for this on gaim-devel. gaim_buddy_icon_new() now leaves a reference for the caller. committer: Tailor Script <tailor@pidgin.im>
author Richard Laager <rlaager@wiktel.com>
date Fri, 02 Sep 2005 06:57:54 +0000
parents 17142948653e
children d0662345799b
comparison
equal deleted inserted replaced
11422:31a17ec5a307 11423:202a3b3c5a88
73 if (icon == NULL) 73 if (icon == NULL)
74 icon = gaim_buddy_icon_create(account, username); 74 icon = gaim_buddy_icon_create(account, username);
75 75
76 gaim_buddy_icon_ref(icon); 76 gaim_buddy_icon_ref(icon);
77 gaim_buddy_icon_set_data(icon, icon_data, icon_len); 77 gaim_buddy_icon_set_data(icon, icon_data, icon_len);
78 gaim_buddy_icon_unref(icon); 78
79 79 /* gaim_buddy_icon_set_data() makes blist.c or
80 /* We don't take a reference here. gaim_buddy_icon_set_data() makes blist.c or 80 * conversation.c, or both, take a reference.
81 conversation.c, or both, do that for us. 81 *
82 * Plus, we leave one for the caller of this function.
82 */ 83 */
84
83 return icon; 85 return icon;
84 } 86 }
85 87
86 void 88 void
87 gaim_buddy_icon_destroy(GaimBuddyIcon *icon) 89 gaim_buddy_icon_destroy(GaimBuddyIcon *icon)
410 if (buddy_icon != NULL) 412 if (buddy_icon != NULL)
411 gaim_buddy_icon_destroy(buddy_icon); 413 gaim_buddy_icon_destroy(buddy_icon);
412 } 414 }
413 else 415 else
414 { 416 {
415 gaim_buddy_icon_new(account, username, icon_data, icon_len); 417 GaimBuddyIcon *icon = gaim_buddy_icon_new(account, username, icon_data, icon_len);
418 gaim_buddy_icon_unref(icon);
416 } 419 }
417 } 420 }
418 421
419 GaimBuddyIcon * 422 GaimBuddyIcon *
420 gaim_buddy_icons_find(GaimAccount *account, const char *username) 423 gaim_buddy_icons_find(GaimAccount *account, const char *username)