diff options
author | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2010-11-04 07:47:08 (GMT) |
---|---|---|
committer | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2010-11-04 08:08:26 (GMT) |
commit | 15a7626480b64d85992bed819fe6052e0c5c8fa9 (patch) | |
tree | 171cbdf64fc620b7b0a7206205b4243130e44859 /configure | |
parent | b59b90678d061bf5935a47385be7f2a31e8eb935 (diff) | |
download | Qt-15a7626480b64d85992bed819fe6052e0c5c8fa9.zip Qt-15a7626480b64d85992bed819fe6052e0c5c8fa9.tar.gz Qt-15a7626480b64d85992bed819fe6052e0c5c8fa9.tar.bz2 |
Make qmake to pass all UTF-8 characters unchanged through parser.
QMakeProject::parse() calls QString::simplified(), which assumes any
byte 0xA0 in multibyte UTF-8 characters is a space character (0x00A0 is
unicode character NBSP [non-breaking space]) and replaces those bytes
with regular space, corrupting the UTF-8 string.
Fixed by temporarily changing all 0xA0 bytes in parser input to another
non-space character 0x01A0. This is safe replacement as qmake doesn't
accept unicode .pro files, so there should never be actual NBSP or the
replacement 0x01A0 characters in a valid .pro file.
Note that there are a couple of more uses of QString::simplified() in
qmake, but those do not deal with strings that need to be UTF-8
compatible as far as I can tell, so no need to touch them.
Task-number: QTBUG-14357
Reviewed-by: Oswald Buddenhagen
Diffstat (limited to 'configure')
0 files changed, 0 insertions, 0 deletions