comparison src/gtkaccount.c @ 6092:35560e017fa1

[gaim-migrate @ 6551] This fixes the buddy icon deletion issue, mad props go to Herman for finding the cause of this. committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Fri, 11 Jul 2003 22:00:01 +0000
parents 6e3650c096b0
children 0d2bd49c611e
comparison
equal deleted inserted replaced
6091:9b09fec41257 6092:35560e017fa1
222 222
223 /* If they typed in a directory, change there */ 223 /* If they typed in a directory, change there */
224 if (gaim_gtk_check_if_dir(filename, GTK_FILE_SELECTION(dialog->buddy_icon_filesel))) 224 if (gaim_gtk_check_if_dir(filename, GTK_FILE_SELECTION(dialog->buddy_icon_filesel)))
225 return; 225 return;
226 226
227 if (dialog->account) { 227 if (dialog->account)
228 const char *username;
229 struct buddy *b;
230
231 gaim_account_set_buddy_icon(dialog->account, filename); 228 gaim_account_set_buddy_icon(dialog->account, filename);
232
233 username = gaim_account_get_username(dialog->account);
234
235 b = gaim_find_buddy(dialog->account, username);
236
237 if (b != NULL) {
238 GaimConversation *conv;
239
240 gaim_buddy_set_setting(b, "buddy_icon", filename);
241 gaim_blist_save();
242 gaim_blist_update_buddy_icon(b);
243
244 conv = gaim_find_conversation(username);
245
246 if (conv != NULL &&
247 gaim_conversation_get_account(conv) == dialog->account) {
248
249 gaim_gtkconv_update_buddy_icon(conv);
250 }
251 }
252 }
253 229
254 gtk_entry_set_text(GTK_ENTRY(dialog->buddy_icon_entry), filename); 230 gtk_entry_set_text(GTK_ENTRY(dialog->buddy_icon_entry), filename);
255 gtk_widget_destroy(dialog->buddy_icon_filesel); 231 gtk_widget_destroy(dialog->buddy_icon_filesel);
256 } 232 }
257 233