summaryrefslogtreecommitdiffstats
path: root/system/libraries/Email.php
diff options
context:
space:
mode:
authorAndrey Andreev <narf@devilix.net>2015-10-30 11:25:15 +0100
committerAndrey Andreev <narf@devilix.net>2015-10-30 11:25:15 +0100
commit3368cebeb6682013c44be7a03d3b3dac0f5c8973 (patch)
tree30ee70aefd0a00e592b087a895179d5535966ef4 /system/libraries/Email.php
parent09a76b8f31e75bf2f7312b976731f985e12973f0 (diff)
Fix #4192
Diffstat (limited to 'system/libraries/Email.php')
-rw-r--r--system/libraries/Email.php13
1 files changed, 8 insertions, 5 deletions
diff --git a/system/libraries/Email.php b/system/libraries/Email.php
index acf3629c3..ebff7567a 100644
--- a/system/libraries/Email.php
+++ b/system/libraries/Email.php
@@ -1563,11 +1563,10 @@ class CI_Email {
if ($this->charset === 'UTF-8')
{
- if (MB_ENABLED === TRUE)
- {
- return mb_encode_mimeheader($str, $this->charset, 'Q', $this->crlf);
- }
- elseif (ICONV_ENABLED === TRUE)
+ // Note: We used to have mb_encode_mimeheader() as the first choice
+ // here, but it turned out to be buggy and unreliable. DO NOT
+ // re-add it! -- Narf
+ if (ICONV_ENABLED === TRUE)
{
$output = @iconv_mime_encode('', $str,
array(
@@ -1590,6 +1589,10 @@ class CI_Email {
$chars = iconv_strlen($str, 'UTF-8');
}
+ elseif (MB_ENABLED === TRUE)
+ {
+ $chars = mb_strlen($str, 'UTF-8');
+ }
}
// We might already have this set for UTF-8