From 7645b64d896330885a2afcbb996b677730151570 Mon Sep 17 00:00:00 2001 From: Alexander Volkov Date: Mon, 20 Oct 2014 16:31:34 +0400 Subject: [PATCH] Add support for "Apple Roman" encoding Substitute this encoding by "macintosh" when Qt is built with ICU. It is for compatibility with Qt 4.x. Change-Id: I70c51cba7d473ac81e25862736cb71a2f6894055 Reviewed-by: Lars Knoll --- src/corelib/codecs/qicucodec.cpp | 2 ++ tests/auto/corelib/codecs/qtextcodec/tst_qtextcodec.cpp | 1 + 2 files changed, 3 insertions(+) diff --git a/src/corelib/codecs/qicucodec.cpp b/src/corelib/codecs/qicucodec.cpp index 103bf0573f..a549430649 100644 --- a/src/corelib/codecs/qicucodec.cpp +++ b/src/corelib/codecs/qicucodec.cpp @@ -445,6 +445,8 @@ QTextCodec *QIcuCodec::codecForNameUnlocked(const char *name) // backwards compatibility with Qt 4.x if (!qstrcmp(name, "CP949")) name = "windows-949"; + else if (!qstrcmp(name, "Apple Roman")) + name = "macintosh"; // 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") || !qstrcmp(name, "windows-874") diff --git a/tests/auto/corelib/codecs/qtextcodec/tst_qtextcodec.cpp b/tests/auto/corelib/codecs/qtextcodec/tst_qtextcodec.cpp index 7c154575d0..24487aa7cc 100644 --- a/tests/auto/corelib/codecs/qtextcodec/tst_qtextcodec.cpp +++ b/tests/auto/corelib/codecs/qtextcodec/tst_qtextcodec.cpp @@ -196,6 +196,7 @@ void tst_QTextCodec::fromUnicode_data() QTest::newRow("windows-1257") << "windows-1257" << true; QTest::newRow("windows-1258") << "windows-1258" << true; + QTest::newRow("Apple Roman") << "Apple Roman" << true; QTest::newRow("macintosh") << "macintosh" << true; //QTest::newRow("WINSAMI2") << "WINSAMI2" << true; QTest::newRow("TIS-620") << "TIS-620" << true;