From bb38060bedf396bdbfbf43b4469a7cea049c8338 Mon Sep 17 00:00:00 2001 From: Jeffrey Stedfast Date: Thu, 2 Sep 2004 20:10:01 +0000 Subject: Fix for bug #63377 and prevention of similar cases. 2004-09-01 Jeffrey Stedfast Fix for bug #63377 and prevention of similar cases. * em-format.c (emf_finalise): Free the default_charset. (emf_format_clone): Clone the default_charset - this prevents the particular crash described in bug #63377. * em-utils.c (em_utils_message_to_html): If source is NULL, set our own default charset (from the user's gconf key) on the formatter to make sure there's always a source charset for conversion to UTF-8. svn path=/trunk/; revision=27122 --- mail/em-format.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'mail/em-format.c') diff --git a/mail/em-format.c b/mail/em-format.c index b7598f97c8..c34d66c5a2 100644 --- a/mail/em-format.c +++ b/mail/em-format.c @@ -137,6 +137,7 @@ emf_finalise(GObject *o) em_format_clear_headers(emf); camel_cipher_validity_free(emf->valid); g_free(emf->charset); + g_free (emf->default_charset); g_string_free(emf->part_id, TRUE); /* FIXME: check pending jobs */ @@ -595,7 +596,9 @@ emf_format_clone(EMFormat *emf, CamelFolder *folder, const char *uid, CamelMimeM emf->mode = emfsource->mode; g_free(emf->charset); emf->charset = g_strdup(emfsource->charset); - + g_free (emf->default_charset); + emf->default_charset = g_strdup (emfsource->default_charset); + em_format_clear_headers(emf); for (h = (struct _EMFormatHeader *)emfsource->header_list.head; h->next; h = h->next) em_format_add_header(emf, h->name, h->flags); -- cgit v1.2.3