Line 114 of src/frontends/qt4/GuiApplication.cpp: language_name.truncate(5); if (qt_trans_.load(language_name, QLibraryInfo::location(QLibraryInfo::TranslationsPath))) {
fails for language_name = qt_zh_CN because qt_trans_.load can not load the truncated version qt_zh.pm, while I have qt_zh_CN.pm on my system. According to qt manual http://doc.trolltech.com/4.1/qtranslator.html#load ----------------------- For example, an application running in the fr_CA locale (French-speaking Canada) might call load("foo.fr_ca", "/opt/foolib"). load() would then try to open the first existing readable file from this list: 1. /opt/foolib/foo.fr_ca.qm 2. /opt/foolib/foo.fr_ca 3. /opt/foolib/foo.fr.qm 4. /opt/foolib/foo.fr 5. /opt/foolib/foo.qm 6. /opt/foolib/foo ------------------------ qt will find qt_zh.pm for language_name = qt_zh_CN, but the other way around. Can I remove the language_name.truncate(5) line? Note that 3971 is still not fixed, but this time, at least the qt dialoags also shows blank (supposedly Chinese) characters. Cheers, Bo