# HG changeset patch # User Herman Bloggs # Date 1064900188 0 # Node ID 7c04a0775918ed55c16578d6c3e3a8aea62fbcca # Parent 9d8e56c66854bdbdd1edc7aaf3c3f0083b1ad62f [gaim-migrate @ 7617] WinGaim 0.69 moved the gaim settings directory exposing an oscar bug.. What to do if a buddy icon cache copy does not exist but a check sum does. Also moved win32 code to initialize gaim settings dir before core initializations. committer: Tailor Script diff -r 9d8e56c66854 -r 7c04a0775918 src/main.c --- a/src/main.c Tue Sep 30 03:06:50 2003 +0000 +++ b/src/main.c Tue Sep 30 05:36:28 2003 +0000 @@ -799,6 +799,11 @@ gaim_core_set_ui_ops(gaim_gtk_core_get_ui_ops()); +#ifdef _WIN32 + wgaim_set_hinstance(hint); + wgaim_pre_plugin_init(); +#endif + if (!gaim_core_init(GAIM_GTK_UI)) { fprintf(stderr, "Initialization of the Gaim core failed. Dumping core.\n" @@ -806,11 +811,6 @@ abort(); } -#ifdef _WIN32 - wgaim_set_hinstance(hint); - wgaim_pre_plugin_init(); -#endif - plugin_search_paths[0] = LIBDIR; plugin_search_paths[1] = gaim_user_dir(); plugin_search_paths[2] = g_strdup_printf("%s/plugins", gaim_user_dir()); diff -r 9d8e56c66854 -r 7c04a0775918 src/protocols/oscar/oscar.c --- a/src/protocols/oscar/oscar.c Tue Sep 30 03:06:50 2003 +0000 +++ b/src/protocols/oscar/oscar.c Tue Sep 30 05:36:28 2003 +0000 @@ -1824,10 +1824,19 @@ if (info->iconcsumlen) { char *b16, *saved_b16; GaimBuddy *b; + FILE *file; b16 = tobase16(info->iconcsum, info->iconcsumlen); b = gaim_find_buddy(gc->account, info->sn); - saved_b16 = gaim_buddy_get_setting(b, "icon_checksum"); + /* If for some reason the checksum is valid, but cached file is not.. + we want to know. */ + if((file = fopen(gaim_buddy_get_setting(b, "buddy_icon"), "rb"))) { + fclose(file); + saved_b16 = gaim_buddy_get_setting(b, "icon_checksum"); + } + else + saved_b16 = NULL; + if (!b16 || !saved_b16 || strcmp(b16, saved_b16)) { GSList *cur = od->requesticon; while (cur && aim_sncmp((char *)cur->data, info->sn))