diff options
-rw-r--r-- | mail/ChangeLog | 5 | ||||
-rw-r--r-- | mail/message-list.c | 7 |
2 files changed, 10 insertions, 2 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog index c6fba1cfff..51bbdbf099 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,3 +1,8 @@ +2000-12-01 Jeffrey Stedfast <fejj@helixcode.com> + + * message-list.c (e_mail_address_new): Perform better + error-handling. + 2000-12-01 Radek Doulik <rodo@helixcode.com> * mail-ops.c (mail_op_report_status): use mail_op_set_message_plain diff --git a/mail/message-list.c b/mail/message-list.c index 9cc69daac4..c5895f97c5 100644 --- a/mail/message-list.c +++ b/mail/message-list.c @@ -152,10 +152,13 @@ e_mail_address_new (const char *address) { CamelInternetAddress *cia; EMailAddress *new; - const char *name, *addr; + const char *name = NULL, *addr = NULL; cia = camel_internet_address_new (); - camel_address_decode (CAMEL_ADDRESS (cia), address); + if (camel_address_unformat (CAMEL_ADDRESS (cia), address) == -1) { + camel_object_unref (CAMEL_OBJECT (cia)); + return NULL; + } camel_internet_address_get (cia, 0, &name, &addr); new = g_new (EMailAddress, 1); |