Ну, да ладно...
В файле system/libraries/Email.php в функции subject() происходит вызов неверно работающей _prep_q_encoding(). Теоретически она должна менять текст на «Quoted-Printable». К сожалению, написана она с ошибками, начиная с того, что strlen() просто не подходит для работы с НЕанглийскими буквами в utf8.
Дабы не утруждать себя всякими глупостями, меняем функцию subject():
- Код: Выделить всё
function subject($subject)
{
$subject = preg_replace("/(\r\n)|(\r)|(\n)/", "", $subject);
$subject = preg_replace("/(\t)/", " ", $subject);
$subject = '=?UTF-8?B?' . base64_encode($subject) . '?=';
$this->_set_header('Subject', $subject);
}
То есть используем нормальное BASE64-кодирование.
Примерно такая же проблема и в функции from(), если используются русские буквы.
