From ba241f88ef9b58f7a714d1c068734d5b74a1f056 Mon Sep 17 00:00:00 2001 From: Milan Crha Date: Wed, 20 Feb 2013 12:01:20 +0100 Subject: EAttachment: Use Subject as fallback filename for message attachments --- e-util/e-attachment.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/e-util/e-attachment.c b/e-util/e-attachment.c index a460890246..495c805f16 100644 --- a/e-util/e-attachment.c +++ b/e-util/e-attachment.c @@ -1839,6 +1839,27 @@ attachment_load_from_mime_part_thread (GSimpleAsyncResult *simple, if (string == NULL) { /* Translators: Default attachment filename. */ string = _("attachment.dat"); + + if (camel_content_type_is (content_type, "message", "rfc822")) { + CamelMimeMessage *msg = NULL; + const gchar *subject = NULL; + + if (CAMEL_IS_MIME_MESSAGE (mime_part)) { + msg = CAMEL_MIME_MESSAGE (mime_part); + } else { + CamelDataWrapper *content; + + content = camel_medium_get_content (CAMEL_MEDIUM (mime_part)); + if (CAMEL_IS_MIME_MESSAGE (content)) + msg = CAMEL_MIME_MESSAGE (content); + } + + if (msg) + subject = camel_mime_message_get_subject (msg); + + if (subject && *subject) + string = subject; + } } else { decoded_string = camel_header_decode_string (string, "UTF-8"); if (decoded_string && *decoded_string && !g_str_equal (decoded_string, string)) { -- cgit v1.2.3