diff options
author | alecpl <alec@alec.pl> | 2010-05-28 09:38:41 +0000 |
---|---|---|
committer | alecpl <alec@alec.pl> | 2010-05-28 09:38:41 +0000 |
commit | d311d809d650e4cab6a5bf0aeb92b97631672c64 (patch) | |
tree | 80ae4736c520debf7fb9e0fd5e2117c3256cc886 /program/steps | |
parent | 89e31bec153c28896c177c1d5e652b38d5d8a55f (diff) |
- Fix forwarding of messages with winmail attachments
- Remove some redundant code for winmail handling in get.inc, move tnef_decode() to rcube_message
- Fix handling of uuencoded attachments in message body (#1485839)
- Extend rc_mime_content_type() to work with string buffer
Diffstat (limited to 'program/steps')
-rw-r--r-- | program/steps/mail/compose.inc | 5 | ||||
-rw-r--r-- | program/steps/mail/get.inc | 11 |
2 files changed, 4 insertions, 12 deletions
diff --git a/program/steps/mail/compose.inc b/program/steps/mail/compose.inc index a6f1d9d11..b0da22711 100644 --- a/program/steps/mail/compose.inc +++ b/program/steps/mail/compose.inc @@ -725,8 +725,9 @@ function rcmail_write_compose_attachments(&$message, $bodyIsHtml) foreach ((array)$message->mime_parts as $pid => $part) { if (($part->ctype_primary != 'message' || !$bodyIsHtml) && $part->ctype_primary != 'multipart' && - ($part->disposition == 'attachment' || ($part->disposition == 'inline' && $bodyIsHtml) || $part->filename)) - { + ($part->disposition == 'attachment' || ($part->disposition == 'inline' && $bodyIsHtml) || $part->filename) + && $part->mimetype != 'application/ms-tnef' + ) { $skip = false; if ($part->mimetype == 'message/rfc822') { $messages[] = $part->mime_id; diff --git a/program/steps/mail/get.inc b/program/steps/mail/get.inc index fdf90135c..89180dd3a 100644 --- a/program/steps/mail/get.inc +++ b/program/steps/mail/get.inc @@ -50,16 +50,7 @@ if (!empty($_GET['_frame'])) { } else if ($pid = get_input_value('_part', RCUBE_INPUT_GET)) { - // TNEF encoded attachment part - if (preg_match('/^winmail\.([0-9.]+)\.([0-9]+)$/', $pid, $nt)) { - $pid = $nt[1]; $i = $nt[2]; - if ($part = $MESSAGE->mime_parts[$pid]) { - $tnef_arr = $IMAP->tnef_decode($part, $MESSAGE->uid); - if (is_a($tnef_arr[$i], 'rcube_message_part')) - $MESSAGE->mime_parts[$pid] = $tnef_arr[$i]; - } - } - + if ($part = $MESSAGE->mime_parts[$pid]) { $ctype_primary = strtolower($part->ctype_primary); $ctype_secondary = strtolower($part->ctype_secondary); |