diff options
| author | alec <alec@208e9e7b-5314-0410-a742-e7e81cd9613c> | 2010-11-26 12:41:16 +0000 |
|---|---|---|
| committer | alec <alec@208e9e7b-5314-0410-a742-e7e81cd9613c> | 2010-11-26 12:41:16 +0000 |
| commit | 5279cc67094fa1a4e588af5e2fc7a4b29c22731b (patch) | |
| tree | b90c8c473457e75f787b1c602399bd506f0ac29a /roundcubemail/program/include/rcube_message.php | |
| parent | 365eecf57234659ab935a2edb228905f1a22aadd (diff) | |
- Add workaround for MSOE's multipart/related messages with non-related attachments
git-svn-id: https://svn.roundcube.net/trunk@4274 208e9e7b-5314-0410-a742-e7e81cd9613c
Diffstat (limited to 'roundcubemail/program/include/rcube_message.php')
| -rw-r--r-- | roundcubemail/program/include/rcube_message.php | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/roundcubemail/program/include/rcube_message.php b/roundcubemail/program/include/rcube_message.php index 89d65eb1e..790f8d9bd 100644 --- a/roundcubemail/program/include/rcube_message.php +++ b/roundcubemail/program/include/rcube_message.php @@ -411,6 +411,10 @@ class rcube_message if ($plugin['abort']) continue; + if ($part_mimetype == 'text/html') { + $got_html_part = true; + } + $mail_part = $plugin['structure']; list($primary_type, $secondary_type) = explode('/', $plugin['mimetype']); @@ -487,8 +491,17 @@ class rcube_message $part_url = $this->get_part_url($inline_object->mime_id); if ($inline_object->content_id) $a_replaces['cid:'.$inline_object->content_id] = $part_url; - if ($inline_object->content_location) + if ($inline_object->content_location) { $a_replaces[$inline_object->content_location] = $part_url; + } + // MS Outlook sends sometimes non-related attachments as related + // In this case multipart/related message has only one text part + // We'll add all such attachments to the attachments list + if (!isset($got_html_part) && empty($inline_object->content_id) + && !empty($inline_object->filename) + ) { + $this->attachments[] = $inline_object; + } } // add replace array to each content part |
