Handle %-escaped UTF-8 sequences in ed2k:// URIsamule-svn-r10229
commit50aef2c4dc2a2e9c627eb4e4eff6467f362798e8
authorupstream svn <svn@amule.org>
Fri, 2 Jul 2010 16:48:25 +0000 (2 16:48 +0000)
committerDévai Tamás <gonosztopi@amule.org>
Sun, 4 Jul 2010 00:39:29 +0000 (4 00:39 +0000)
tree41e8bff31abfd29479009991b4728310bbbe1a14
parent6c7b4caee667ae6ace90265ac21610115de7392d
Handle %-escaped UTF-8 sequences in ed2k:// URIs

Previously, each %-escaped character was decoded and interpreted separately.
This worked as long as only ISO-8859-1 (Latin-1) characters were encoded so.
However, if the encoded characters made up a UTF-8 sequence, decoding would
fail terribly. This is now fixed.

The current implementation decodes all escaped characters in one pass, and only
then it tries to interpret the resulting character array as an UTF-8-encoded
string. If the conversion fails it falls back to ISO-8859-1 (thus still supporting
the old behaviour).
.svn-revision
src/libs/common/StringFunctions.cpp