Mercurial > pidgin
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 |