summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoralec <alec@208e9e7b-5314-0410-a742-e7e81cd9613c>2010-11-26 12:41:16 +0000
committeralec <alec@208e9e7b-5314-0410-a742-e7e81cd9613c>2010-11-26 12:41:16 +0000
commit5279cc67094fa1a4e588af5e2fc7a4b29c22731b (patch)
treeb90c8c473457e75f787b1c602399bd506f0ac29a
parent365eecf57234659ab935a2edb228905f1a22aadd (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
-rw-r--r--roundcubemail/CHANGELOG1
-rw-r--r--roundcubemail/program/include/rcube_message.php15
-rw-r--r--roundcubemail/skins/default/editor_content.css1
3 files changed, 15 insertions, 2 deletions
diff --git a/roundcubemail/CHANGELOG b/roundcubemail/CHANGELOG
index 3236253e9..9eb23bce2 100644
--- a/roundcubemail/CHANGELOG
+++ b/roundcubemail/CHANGELOG
@@ -77,6 +77,7 @@ CHANGELOG Roundcube Webmail
- Lock submit button in onsubmit event on login page (#1487036)
- Don't set attachment's charset in Content-type header (#1487122)
- Fix handling of message bodies (quoted-printable encoded) with NULL characters (#1486189)
+- Add workaround for MSOE's multipart/related messages with non-related attachments
RELEASE 0.4.2
-------------
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
diff --git a/roundcubemail/skins/default/editor_content.css b/roundcubemail/skins/default/editor_content.css
index 14c2936d5..2ddc87fe9 100644
--- a/roundcubemail/skins/default/editor_content.css
+++ b/roundcubemail/skins/default/editor_content.css
@@ -30,4 +30,3 @@ blockquote
margin-left:5px;
width:100%;
}
-