Fix quoted-printable encoding according to RFC 2045

release-0.6
thomascube 16 years ago
parent cf17773654
commit 9bed2d86d5

@ -141,7 +141,7 @@ class rcube_mail_mime extends Mail_mime
$value = trim($value);
//This header contains non ASCII chars and should be encoded.
if (preg_match('#[\x80-\xFF]{1}#', $value)) {
if (preg_match('#[\x00-\x1F\x80-\xFF]{1}#', $value)) {
$suffix = '';
// Don't encode e-mail address
if (preg_match('/(.+)\s(<.+@[a-z0-9\-\.]+>)$/Ui', $value, $matches)) {
@ -160,7 +160,7 @@ class rcube_mail_mime extends Mail_mime
default:
// quoted-printable encoding has been selected
$mode = 'Q';
$encoded = preg_replace('/([\x2C\x3F\x80-\xFF])/e', "'='.sprintf('%02X', ord('\\1'))", $value);
$encoded = preg_replace('/([\x3F\x00-\x1F\x80-\xFF])/e', "'='.sprintf('%02X', ord('\\1'))", $value);
// replace spaces with _
$encoded = str_replace(' ', '_', $encoded);
}

Loading…
Cancel
Save