# HG changeset patch # User Richard Laager # Date 1177463964 0 # Node ID 493ca924c19991233311ae9c92dc1fc3ea31d500 # Parent d4c79390d42407038e09ea81bac7a831eb680e42 I'm stupid. If an icon doesn't exist, it's a good idea to create it when we want to fill it with data, not when we don't. diff -r d4c79390d424 -r 493ca924c199 libpurple/buddyicon.c --- a/libpurple/buddyicon.c Wed Apr 25 01:19:01 2007 +0000 +++ b/libpurple/buddyicon.c Wed Apr 25 01:19:24 2007 +0000 @@ -498,18 +498,15 @@ void *icon_data, size_t icon_len, const char *checksum) { + PurpleBuddyIcon *icon; + g_return_if_fail(account != NULL); g_return_if_fail(username != NULL); - if (icon_data != NULL && icon_len > 0) - { - PurpleBuddyIcon *icon; + icon = purple_buddy_icons_find(account, username); - icon = purple_buddy_icons_find(account, username); - - if (icon != NULL) - purple_buddy_icon_set_data(icon, icon_data, icon_len, checksum); - } + if (icon != NULL) + purple_buddy_icon_set_data(icon, icon_data, icon_len, checksum); else { PurpleBuddyIcon *icon = purple_buddy_icon_new(account, username, icon_data, icon_len, checksum);