diff options
author | Aleksander Machniak <alec@alec.pl> | 2012-06-08 11:49:12 +0200 |
---|---|---|
committer | Aleksander Machniak <alec@alec.pl> | 2012-06-08 11:49:12 +0200 |
commit | 4fd5b62194c37cf296d3f9c8babfb14f897c2d93 (patch) | |
tree | 73323f36ad8bbbd8c68b3b2a3b9fab11bc3de1f2 | |
parent | 8749e94b4bed36500e4f45c65cc16cfd5633ef34 (diff) |
Add Content-Length for attachments where possible (#1485478)
-rw-r--r-- | CHANGELOG | 1 | ||||
-rw-r--r-- | program/steps/mail/get.inc | 7 |
2 files changed, 7 insertions, 1 deletions
@@ -1,6 +1,7 @@ CHANGELOG Roundcube Webmail =========================== +- Add Content-Length for attachments where possible (#1485478) - Fix attachment sizes in message print page and attachment preview page (#1488515) - Fix XSS vulnerability in message subject handling using Larry skin (#1488519) - Fix handling of links with various URI schemes e.g. "skype:" (#1488106) diff --git a/program/steps/mail/get.inc b/program/steps/mail/get.inc index 658538a20..bcd57dee0 100644 --- a/program/steps/mail/get.inc +++ b/program/steps/mail/get.inc @@ -199,13 +199,18 @@ else if (strlen($pid = get_input_value('_part', RCUBE_INPUT_GET))) { $sent = $RCMAIL->storage->get_message_part($MESSAGE->uid, $part->mime_id, $part, false, $stdout); } } + // send part as-it-is else { - // turn off output buffering and print part content if ($part->body) { + header("Content-Length: " . sizeof($part->body)); echo $part->body; $sent = true; } else if ($part->size) { + if ($size = (int)$part->d_parameters['size']) { + header("Content-Length: $size"); + } + $sent = $RCMAIL->storage->get_message_part($MESSAGE->uid, $part->mime_id, $part, true); } } |