-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/110043/
-----------------------------------------------------------
Review request for kdelibs.
Description
-------
This patch works around the problem of filenames that are not valid UTF8
strings: in KLocalePrivate::initFileNameEncoding() KDE sets the QFile's
encoding/decoding function, to to/fromUTF8() in QString, which in turn calls
QUtf8's converter function (QUtf8 is not exported to developers, so I had to
use an inefficient method, I think it would be better if we could use the state
parameter for error detection). I replaced this with the said functions'
copy/pasted version and changed it, so when it encounters an invalid UTF8
string, it will encode it byte by byte, mapping the lower 128 their normal
unicode place and the upper 128 to U+18000-U+1807F, and of course the decoder
reverses it.
To make this actually work you have to define the KDE_UTF8_FILENAMES enviroment
variable to a specific value ("broken_names").
To test it, do the following: .kde/env/KDE_UTF8_FILENAMES.sh with this content:
export KDE_UTF8_FILENAMES=broken_names
logout, login, try dolphin on faulty files. (instead of the usual boxed "?"
you'll see just boxes)
This addresses bug 165044.
http://bugs.kde.org/show_bug.cgi?id=165044
Diffs
-----
kdecore/localization/klocale_kde.cpp b010e74
Diff: http://git.reviewboard.kde.org/r/110043/diff/
Testing
-------
Thanks,
Róbert Szókovács