[kde-russian] Паразитная перекодировка пути в konqueror 3.0.4

Nikita V. Youshchenko =?iso-8859-1?q?yoush_=CE=C1_cs=2Emsu=2Esu?=
Сб Окт 12 12:51:08 MSD 2002


Господа!

Так вышло, что вплоть до вчерашнего для я в основном сидел в KDE 2.x,
и только вчера попробовал пересесть в 3.0.4.

Сразу всплыл пренеприятный глюк с konqueror.

Если в локальной файловой системе в каталоге с русским именем лежит набор 
связанных html страниц в кодировке cp125 (локаль системы - ru_RU.KOI8-R), 
то ссылки между ними (локальные, нормально работавшие с konqueror из 
KDE2) не работают. Из-за того, что происходит паразитное перекодирование 
пути.

Например, если в файле /home/nikita/РусскоеИмя/index.html написано 
href="a.html", то konqueror пытается открыть файл 
/home/nikita/тХУУЛПЕйНС/a.html

Быстрый поиск по исходникам вывел на функцию
KHTMLPart::completeURL( const QString &url )
в файле kdelibs/khtml/khtml_part.cpp, в которой написано следующее:

  if (d->m_decoder)
    return KURL(d->m_doc->completeURL(url),
               d->m_decoder->codec()->mibEnum());

т.е. похоже сначала производится слияние локальноы ссылки с базовой, а уже 
потом перекодирование, в результате чего перекодируется база, которую 
перекодированть не надо.

Кто-нибудь знает, исправлено ли это в бетах 3.1, и как правильно исправить 
в 3.0.4?




Подробная информация о списке рассылки kde-russian