[sisyphus] SquirrelMail: ошибка декодирования писем koi8-r в консоли 1251
Yuri V. Anikin
=?iso-8859-1?q?y=2Eanikin_=CE=C1_mec=2Etgl=2Eru?=
Вт Июн 29 09:03:20 MSD 2004
Alexander Markelov пишет:
> Yuri V. Anikin пишет:
>
>> добрый день!
>>
>> squirrelmail-1.4.3a-alt1
>> php-4.3.7-alt0.cvs20040531
>> uw-imap-2001a-alt9.1
>>
>> locale
>> LANG=ru_RU.CP1251
>> LC_CTYPE=ru_RU.CP1251
>> LC_NUMERIC=ru_RU.CP1251
>> LC_TIME=ru_RU.CP1251
>> LC_COLLATE=ru_RU.CP1251
>> LC_MONETARY=ru_RU.CP1251
>> LC_MESSAGES=ru_RU.CP1251
>> LC_PAPER="ru_RU.CP1251"
>> LC_NAME="ru_RU.CP1251"
>> LC_ADDRESS="ru_RU.CP1251"
>> LC_TELEPHONE="ru_RU.CP1251"
>> LC_MEASUREMENT="ru_RU.CP1251"
>> LC_IDENTIFICATION="ru_RU.CP1251"
>> LC_ALL=
>>
>> После успешного логина в браузере наблюдаем:
>>
>> Warning: ereg(): Invalid collation character in
>> /var/www/html/squirrelmail/functions/decode/koi8-r.php on line 48
>>
>> Warning: ereg(): Invalid collation character in
>> /var/www/html/squirrelmail/functions/decode/koi8-r.php on line 48
>> ...........
>>
>> И так многократно.
>>
>> В принципе, то же самое у меня было и на версии 1.4.2
>>
>>
> Доброго времени суток!
> Я сделал злобный хак вот в этом месте в файле
> /var/www/html/squirrelmail/functions/decode/koi8-r.php
> /* Only do the slow convert if there are 8-bit characters */
> /* avoid using 0xA0 (\240) in ereg ranges. RH73 does not like that */
> # if (! ereg("[\200-\237]", $string) and ! ereg("[\241-\377]",
> $string) )
> # return $string;
> Закоментировал две строчки #
> И в файле конфига /etc/squirrelmail/config.php $default_charset=utf-8 у
> меня.
> Вроде работает, мне надо было проблему быстро решить, а вообще надо багу
> вешать мне кажется.
Воспользовался предложенным workaround. Однако обнаружил выпадение той
же самой ошибки у другого клиента с той лишь разницей, что ругань на
файл cp1251.php... Снова закрыл комментариями.
Кто повесит багу?
--
С уважением,
Юрий Аникин
Подробная информация о списке рассылки Sisyphus