crash when opening a message due to NULL being passed to g_strdup_printf on a Solaris box. To: " " <foo bar com> the problem was that the encoded name becomes NULL since there's nothing to actually encode. Jeff -- Jeffrey Stedfast Evolution Hacker - Novell, Inc. fejj ximian com - www.novell.com
? 55303-2.patch ? 55303.patch ? 61199.patch ? foo Index: ChangeLog =================================================================== RCS file: /cvs/gnome/evolution/mail/ChangeLog,v retrieving revision 1.3411 diff -u -r1.3411 ChangeLog --- ChangeLog 5 Jul 2004 15:08:21 -0000 1.3411 +++ ChangeLog 7 Jul 2004 16:05:00 -0000 @@ -1,3 +1,12 @@ +2004-07-07 Jeffrey Stedfast <fejj novell com> + + Fix for bug #61199. + + * em-format-html.c (efh_format_address): Same. + + * em-format-quote.c (emfq_format_address): Make sure 'real' isn't + NULL before using. + 2004-07-02 JP Rosevaer <jpr novell com> * Makefile.am (SUBDIRS): Revert previous error change Index: em-format-html.c =================================================================== RCS file: /cvs/gnome/evolution/mail/em-format-html.c,v retrieving revision 1.60 diff -u -r1.60 em-format-html.c --- em-format-html.c 24 May 2004 08:02:25 -0000 1.60 +++ em-format-html.c 7 Jul 2004 16:05:00 -0000 @@ -1433,11 +1433,14 @@ g_string_append_printf (out, "%s <", name); /* rfc2368 for mailto syntax and url encoding extras */ - real = camel_header_encode_phrase(a->name); - mailaddr = g_strdup_printf("%s <%s>", real, a->v.addr); - g_free(real); - mailto = camel_url_encode(mailaddr, "?=&()"); - g_free(mailaddr); + if ((real = camel_header_encode_phrase (a->name))) { + mailaddr = g_strdup_printf("%s <%s>", real, a->v.addr); + g_free (real); + mailto = camel_url_encode (mailaddr, "?=&()"); + g_free (mailaddr); + } else { + mailto = camel_url_encode (a->v.addr, "?=&()"); + } } else { mailto = camel_url_encode (a->v.addr, "?=&()"); } Index: em-format-quote.c =================================================================== RCS file: /cvs/gnome/evolution/mail/em-format-quote.c,v retrieving revision 1.10 diff -u -r1.10 em-format-quote.c --- em-format-quote.c 25 May 2004 16:16:25 -0000 1.10 +++ em-format-quote.c 7 Jul 2004 16:05:00 -0000 @@ -209,14 +209,17 @@ case CAMEL_HEADER_ADDRESS_NAME: if (name && *name) { char *real, *mailaddr; - + g_string_append_printf (out, "%s <", name); /* rfc2368 for mailto syntax and url encoding extras */ - real = camel_header_encode_phrase (a->name); - mailaddr = g_strdup_printf ("%s <%s>", real, a->v.addr); - g_free (real); - mailto = camel_url_encode (mailaddr, "?=&()"); - g_free (mailaddr); + if ((real = camel_header_encode_phrase (a->name))) { + mailaddr = g_strdup_printf ("%s <%s>", real, a->v.addr); + g_free (real); + mailto = camel_url_encode (mailaddr, "?=&()"); + g_free (mailaddr); + } else { + mailto = camel_url_encode (a->v.addr, "?=&()"); + } } else { mailto = camel_url_encode (a->v.addr, "?=&()"); }
Attachment:
smime.p7s
Description: S/MIME cryptographic signature