diff options
author | Milan Crha <mcrha@redhat.com> | 2014-02-18 19:37:12 +0800 |
---|---|---|
committer | Milan Crha <mcrha@redhat.com> | 2014-02-18 19:37:12 +0800 |
commit | bc2fd7b35695bc18a5f9dd0111d58d93d7e19d9b (patch) | |
tree | 96c68182db3f458b710e0dea25fa920b674190df | |
parent | 3219d7a8e37fadadd823dd7676a40d40283836fd (diff) | |
download | gsoc2013-evolution-bc2fd7b35695bc18a5f9dd0111d58d93d7e19d9b.tar gsoc2013-evolution-bc2fd7b35695bc18a5f9dd0111d58d93d7e19d9b.tar.gz gsoc2013-evolution-bc2fd7b35695bc18a5f9dd0111d58d93d7e19d9b.tar.bz2 gsoc2013-evolution-bc2fd7b35695bc18a5f9dd0111d58d93d7e19d9b.tar.lz gsoc2013-evolution-bc2fd7b35695bc18a5f9dd0111d58d93d7e19d9b.tar.xz gsoc2013-evolution-bc2fd7b35695bc18a5f9dd0111d58d93d7e19d9b.tar.zst gsoc2013-evolution-bc2fd7b35695bc18a5f9dd0111d58d93d7e19d9b.zip |
Bug #724437 - Content-Disposition inline confuses message formatter
-rw-r--r-- | em-format/e-mail-parser-message.c | 3 | ||||
-rw-r--r-- | em-format/e-mail-part-utils.c | 5 |
2 files changed, 5 insertions, 3 deletions
diff --git a/em-format/e-mail-parser-message.c b/em-format/e-mail-parser-message.c index 95446c06bb..282cef4ef4 100644 --- a/em-format/e-mail-parser-message.c +++ b/em-format/e-mail-parser-message.c @@ -26,6 +26,7 @@ #include <libemail-engine/libemail-engine.h> #include "e-mail-parser-extension.h" +#include "e-mail-part-attachment.h" #include "e-mail-part-utils.h" typedef EMailParserExtension EMailParserMessage; @@ -96,7 +97,7 @@ empe_message_parse (EMailParserExtension *extension, * bar but also set the "force_inline" flag since it doesn't make * sense to collapse the message body if we can render it. */ mail_part = g_queue_peek_head (&work_queue); - if (mail_part != NULL) { + if (mail_part != NULL && !E_IS_MAIL_PART_ATTACHMENT (mail_part)) { if (e_mail_part_get_is_attachment (mail_part)) { e_mail_parser_wrap_as_attachment ( parser, part, part_id, &work_queue); diff --git a/em-format/e-mail-part-utils.c b/em-format/e-mail-part-utils.c index 64b929da70..5b0072e177 100644 --- a/em-format/e-mail-part-utils.c +++ b/em-format/e-mail-part-utils.c @@ -533,8 +533,10 @@ e_mail_part_is_inline (CamelMimePart *mime_part, EMailParserExtension *extension; EMailParserExtensionClass *class; + disposition = camel_mime_part_get_disposition (mime_part); + if ((extensions == NULL) || g_queue_is_empty (extensions)) - return FALSE; + return disposition && g_ascii_strcasecmp (disposition, "inline") == 0; extension = g_queue_peek_head (extensions); class = E_MAIL_PARSER_EXTENSION_GET_CLASS (extension); @@ -544,7 +546,6 @@ e_mail_part_is_inline (CamelMimePart *mime_part, if (class->flags & E_MAIL_PARSER_EXTENSION_INLINE_DISPOSITION) return TRUE; - disposition = camel_mime_part_get_disposition (mime_part); if (disposition != NULL) return g_ascii_strcasecmp (disposition, "inline") == 0; |