diff src/protocols/yahoo/yahoo.c @ 9325:f40233043b5a

[gaim-migrate @ 10133] This fixes some oddities with fetching a users icon if he had previously unset it, and then set the same one. We were forgetting to unset some flags and also the checksum, so we noticed the checksum was the same and didn't ask for the icon, even though we didn't have an icon. Its still not always fetching it, which is odd. committer: Tailor Script <tailor@pidgin.im>
author Tim Ringenbach <marv@pidgin.im>
date Sun, 20 Jun 2004 07:38:40 +0000
parents 01c50436203e
children d42f3e4fd7ad
line wrap: on
line diff
--- a/src/protocols/yahoo/yahoo.c	Sun Jun 20 06:57:54 2004 +0000
+++ b/src/protocols/yahoo/yahoo.c	Sun Jun 20 07:38:40 2004 +0000
@@ -443,14 +443,20 @@
 			if (!name)
 				break;
 
+			b = gaim_find_buddy(gc->account, name);
+
 			if (!cksum || (cksum == -1)) {
+				if (f)
+					yahoo_friend_set_buddy_icon_need_request(f, TRUE);
 				gaim_buddy_icons_set_for_user(gc->account, name, NULL, 0);
+				if (b)
+					gaim_blist_node_remove_setting((GaimBlistNode *)b, YAHOO_ICON_CHECKSUM_KEY);
 				break;
 			}
 
 			if (!f)
 				break;
-			b = gaim_find_buddy(gc->account, name);
+
 			yahoo_friend_set_buddy_icon_need_request(f, FALSE);
 			if (cksum != gaim_blist_node_get_int((GaimBlistNode*)b, YAHOO_ICON_CHECKSUM_KEY))
 				yahoo_send_picture_request(gc, name);