From b912dd5436413b55dc4500dd7d2b8afcdd433727 Mon Sep 17 00:00:00 2001 From: Dan Winship Date: Thu, 29 Mar 2001 22:16:23 +0000 Subject: if called with a multipart that's really a 0-part, spew an error and * mail-format.c (call_handler_function): if called with a multipart that's really a 0-part, spew an error and display as source. svn path=/trunk/; revision=9031 --- mail/ChangeLog | 4 ++++ mail/mail-format.c | 9 +++++++++ 2 files changed, 13 insertions(+) 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 + * 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 * mail-callbacks.c: #include 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); -- cgit