X-Git-Url: https://vcs.fsf.org/?p=squirrelmail.git;a=blobdiff_plain;f=functions%2Fi18n.php;h=107f2cff0c3179eaf96255ad8b8dfc8d15b7255f;hp=92deb52aaab24715da76c35e01b0c18a9e4935f3;hb=8ba05cbe54f4bdd7988dca9fa75b6a2ca8da1cec;hpb=0522a2de6c2ffc6e8f1f37c6c184da0b689ce86b diff --git a/functions/i18n.php b/functions/i18n.php index 92deb52a..107f2cff 100644 --- a/functions/i18n.php +++ b/functions/i18n.php @@ -1090,7 +1090,33 @@ function japanese_charset_xtra() { $ret = mb_strimwidth($ret, 0, $width, '...'); break; case 'encodeheader': - $ret = mb_encode_mimeheader($ret); + $result = ''; + if (strlen($ret) > 0) { + $tmpstr = mb_substr($ret, 0, 1); + $prevcsize = strlen($tmpstr); + for ($i = 1; $i < mb_strlen($ret); $i++) { + $tmp = mb_substr($ret, $i, 1); + if (strlen($tmp) == $prevcsize) { + $tmpstr .= $tmp; + } else { + if ($prevcsize == 1) { + $result .= $tmpstr; + } else { + $result .= mb_encode_mimeheader($tmpstr); + } + $tmpstr = $tmp; + $prevcsize = strlen($tmp); + } + } + if (strlen($tmpstr)) { + if (strlen(mb_substr($tmpstr, 0, 1)) == 1) + $result .= $tmpstr; + else + $result .= mb_encode_mimeheader($tmpstr); + } + } + $ret = $result; + //$ret = mb_encode_mimeheader($ret); break; case 'decodeheader': $ret = str_replace("\t", "", $ret);