summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--INSTALL1
-rw-r--r--program/include/rcube_mime.php4
2 files changed, 3 insertions, 2 deletions
diff --git a/INSTALL b/INSTALL
index 493baf70b..d175d6fc3 100644
--- a/INSTALL
+++ b/INSTALL
@@ -18,6 +18,7 @@ REQUIREMENTS
* PEAR packages distributed with Roundcube or external:
- MDB2 2.5.0 or newer
- Mail_Mime 1.8.1 or newer
+ - Mail_mimeDecode 1.5.5 or newer
- Net_SMTP 1.4.2 or newer
- Net_IDNA2 0.1.1 or newer
- Auth_SASL 1.0.3 or newer
diff --git a/program/include/rcube_mime.php b/program/include/rcube_mime.php
index bc0b2aa8c..538c8ea45 100644
--- a/program/include/rcube_mime.php
+++ b/program/include/rcube_mime.php
@@ -94,13 +94,13 @@ class rcube_mime
$part_charset = $struct->charset ? $struct->charset : self::$default_charset;
- // TODO: determine filename
+ // determine filename
if (($filename = $part->d_parameters['filename']) || ($filename = $part->ctype_parameters['name'])) {
$struct->filename = rcube_mime::decode_mime_string($filename, $part_charset);
}
// copy part body and convert it to UTF-8 if necessary
- $struct->body = $part->ctype_primary == 'text' ? rcube_charset::convert($part->body, $part_charset) : $part->body;
+ $struct->body = $part->ctype_primary == 'text' || !$part->ctype_parameters['charset'] ? rcube_charset::convert($part->body, $part_charset) : $part->body;
$struct->size = strlen($part->body);
$struct->disposition = $part->disposition;