Исправление кодировки русских заголовков заявок, получаемых по почте в GLPI

Начиная с версии 0.84.3, темы заявок, которые GLPI забирает из почтового ящика техподдержки, стали некорректно отображаться. Думал, в 0.84.4 поправят, но ошибка осталась. Пришлось разбираться.

Когда отправляешь в кодировке UTF-8, всё в порядке, а когда в KOI8-R (стоит по умолчанию в Outlook) – кодировка бьётся. Выяснил, что за обработку писем отвечает файл /usr/share/glpi/inc/mailcollector.class.php.

Скачал версии 0.84.2 и 0.84.4, и открыл два файла mailcollector.class.php из разных версий в WinMerge — это программа для сравнения текстовых файлов. Оказалось, что в новой версии GLPI закомментировали старый рабочий код, декодирующий письма, и оставили от него только одну строку:

// $decodedStr .= mb_convert_encoding($mimeStr->text, $targetCharset,
//     (in_array($mimeStr->charset, $encodings)
//     ? $mimeStr->charset : $fallbackCharset));
// Try not to use fallback charset in order to manage encodings not listed by mbstring
$decodedStr .= mb_convert_encoding($mimeStr->text, $targetCharset);

Я раскомментировал три верхние строки и закомментировал нижнюю, и всё стало в порядке.

Upd: в версии 0.84.5 эту проблему исправили.