| 103 * icon is already destroyed. |
103 * icon is already destroyed. |
| 104 */ |
104 */ |
| 105 account = gaim_buddy_icon_get_account(icon); |
105 account = gaim_buddy_icon_get_account(icon); |
| 106 username = gaim_buddy_icon_get_username(icon); |
106 username = gaim_buddy_icon_get_username(icon); |
| 107 |
107 |
| 108 conv = gaim_find_conversation_with_account(username, account); |
108 conv = gaim_find_conversation_with_account(GAIM_CONV_IM, username, account); |
| 109 if (conv != NULL && gaim_conversation_get_type(conv) == GAIM_CONV_IM) |
109 if (conv != NULL) |
| 110 gaim_conv_im_set_icon(GAIM_CONV_IM(conv), NULL); |
110 gaim_conv_im_set_icon(GAIM_CONV_IM(conv), NULL); |
| 111 |
111 |
| 112 for (list = sl = gaim_find_buddies(account, username); sl != NULL; |
112 for (list = sl = gaim_find_buddies(account, username); sl != NULL; |
| 113 sl = sl->next) |
113 sl = sl->next) |
| 114 { |
114 { |
| 188 gaim_buddy_set_icon(buddy, icon); |
188 gaim_buddy_set_icon(buddy, icon); |
| 189 } |
189 } |
| 190 |
190 |
| 191 g_slist_free(list); |
191 g_slist_free(list); |
| 192 |
192 |
| 193 conv = gaim_find_conversation_with_account(username, account); |
193 conv = gaim_find_conversation_with_account(GAIM_CONV_IM, username, account); |
| 194 |
194 |
| 195 if (conv != NULL && gaim_conversation_get_type(conv) == GAIM_CONV_IM) |
195 if (conv != NULL) |
| 196 gaim_conv_im_set_icon(GAIM_CONV_IM(conv), icon); |
196 gaim_conv_im_set_icon(GAIM_CONV_IM(conv), icon); |
| 197 } |
197 } |
| 198 |
198 |
| 199 void |
199 void |
| 200 gaim_buddy_icon_cache(GaimBuddyIcon *icon, GaimBuddy *buddy) |
200 gaim_buddy_icon_cache(GaimBuddyIcon *icon, GaimBuddy *buddy) |