Fix QTextCodec race.

The aliases for the TIS-620 codec were not available before loading it.
This led to the following intermittent failure:
QWARN  : tst_QTextCodec::threadSafety() WARNING "MS874" not found?

Change-Id: I8ed037d3238c04e1d35ed49e833ac01b7501d3e8
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
This commit is contained in:
David Faure 2013-01-22 13:18:06 +01:00 committed by The Qt Project
parent e17dddfd3b
commit ffeaff9a26

View File

@ -453,8 +453,11 @@ QTextCodec *QIcuCodec::codecForNameUnlocked(const char *name)
// backwards compatibility with Qt 4.x // backwards compatibility with Qt 4.x
if (!qstrcmp(name, "CP949")) if (!qstrcmp(name, "CP949"))
name = "windows-949"; name = "windows-949";
// this one is broken data in ICU 4.4, and can't be resolved even though it's an alias to tis-620 // these are broken data in ICU 4.4, and can't be resolved even though they are aliases to tis-620
if (!qstrcmp(name, "windows-874-2000")) if (!qstrcmp(name, "windows-874-2000")
|| !qstrcmp(name, "windows-874")
|| !qstrcmp(name, "MS874")
|| !qstrcmp(name, "x-windows-874"))
name = "TIS-620"; name = "TIS-620";
UErrorCode error = U_ZERO_ERROR; UErrorCode error = U_ZERO_ERROR;