diff options
-rw-r--r-- | mail/ChangeLog | 4 | ||||
-rw-r--r-- | mail/mail-format.c | 9 |
2 files changed, 13 insertions, 0 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog index fd238d93a3..0b785db609 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,5 +1,9 @@ 2001-03-29 Dan Winship <danw@ximian.com> + * mail-format.c (call_handler_function): if called with a + multipart that's really a 0-part, spew an error and display as + source. + * message-list.c: #include <camel/camel-vtrash-folder.h> * mail-callbacks.c: #include <libgnome/gnome-paper.h> diff --git a/mail/mail-format.c b/mail/mail-format.c index 6cc6cccc1c..53ba0dd57d 100644 --- a/mail/mail-format.c +++ b/mail/mail-format.c @@ -548,6 +548,15 @@ call_handler_function (CamelMimePart *part, MailDisplay *md) gboolean output, is_inline; wrapper = camel_medium_get_content_object (CAMEL_MEDIUM (part)); + + if (CAMEL_IS_MULTIPART (wrapper) && + camel_multipart_get_number (CAMEL_MULTIPART (wrapper)) == 0) { + mail_error_write (md->html, md->stream, _("Could not parse MIME message. Displaying as source.")); + if (mail_content_loaded (wrapper, md)) + handle_text_plain (part, "text/plain", md); + return TRUE; + } + mime_type = camel_data_wrapper_get_mime_type (wrapper); g_strdown (mime_type); |