Mon, 14 Apr 2003 00:53:44 +0000
[gaim-migrate @ 5488]
properly handle NULL settings, and hopefully fix a potential buddy icon
segfault. I'm sure KingAnt will come up with a better fix for this later
| src/list.c | file | annotate | diff | comparison | revisions | |
| src/protocols/oscar/oscar.c | file | annotate | diff | comparison | revisions |
--- a/src/list.c Sun Apr 13 22:19:43 2003 +0000 +++ b/src/list.c Mon Apr 14 00:53:44 2003 +0000 @@ -1200,9 +1200,16 @@ static void blist_print_buddy_settings(gpointer key, gpointer data, gpointer user_data) { - char *key_val = g_markup_escape_text(key, -1); - char *data_val = g_markup_escape_text(data, -1); + char *key_val; + char *data_val; FILE *file = user_data; + + if(!key || !data) + return; + + key_val = g_markup_escape_text(key, -1); + data_val = g_markup_escape_text(data, -1); + fprintf(file, "\t\t\t\t\t<setting name=\"%s\">%s</setting>\n", key_val, data_val); g_free(key_val);
--- a/src/protocols/oscar/oscar.c Sun Apr 13 22:19:43 2003 +0000 +++ b/src/protocols/oscar/oscar.c Mon Apr 14 00:53:44 2003 +0000 @@ -3406,7 +3406,8 @@ b = gaim_find_buddy(gc->account, sn); gaim_buddy_set_setting(b, "icon_checksum", b16); gaim_blist_save(); - free(b16); + if(b16) + free(b16); } cur = od->requesticon;