diff options
author | Nathan Wells <sungkhum@gmail.com> | 2015-09-03 12:21:05 +0100 |
---|---|---|
committer | Andras Timar <andras.timar@collabora.com> | 2017-04-24 08:29:33 +0200 |
commit | aa89161fc713a365bbec2936331f4f342d6eb58d (patch) | |
tree | 749892178bfe374b1c44a1004f5461c8804ec258 | |
parent | a9e09fa66dd99a18af69739fb23264b15d647ae0 (diff) |
Related: tdf#52020 Disable ICU Breakiterator for Khmer
Enabling the ICU Breakiterator causes Khmer spelling checkers to be worthless
as well as wrecks havoc on various minority languages that use the Khmer
script. See this https://bugs.documentfoundation.org/show_bug.cgi?id=52020
this: https://bugs.freedesktop.org/show_bug.cgi?id=59448 and this:
https://bugs.documentfoundation.org/show_bug.cgi?id=59447&redirected_from=fdo
(cherry picked from commit 10199478b841a87e6436996bde221e424d1df708)
Change-Id: I84529db9cca72ffe1108d2e12c1885f63a48f89d
-rw-r--r-- | i18npool/qa/cppunit/test_breakiterator.cxx | 20 | ||||
-rw-r--r-- | i18npool/source/breakiterator/breakiterator_unicode.cxx | 2 |
2 files changed, 11 insertions, 11 deletions
diff --git a/i18npool/qa/cppunit/test_breakiterator.cxx b/i18npool/qa/cppunit/test_breakiterator.cxx index be4dd6d13935..567fec5d8580 100644 --- a/i18npool/qa/cppunit/test_breakiterator.cxx +++ b/i18npool/qa/cppunit/test_breakiterator.cxx @@ -39,29 +39,28 @@ public: void testWeak(); void testAsian(); void testThai(); +#if (U_ICU_VERSION_MAJOR_NUM > 51) void testLao(); #ifdef TODO void testNorthernThai(); -#endif void testKhmer(); +#endif +#endif void testJapanese(); void testChinese(); CPPUNIT_TEST_SUITE(TestBreakIterator); CPPUNIT_TEST(testLineBreaking); + CPPUNIT_TEST(testWordBoundaries); CPPUNIT_TEST(testGraphemeIteration); CPPUNIT_TEST(testWeak); CPPUNIT_TEST(testAsian); CPPUNIT_TEST(testThai); +#if (U_ICU_VERSION_MAJOR_NUM > 51) + CPPUNIT_TEST(testLao); #ifdef TODO - CPPUNIT_TEST(testNorthernThai); -#endif - - CPPUNIT_TEST(testWordBoundaries); -#if (U_ICU_VERSION_MAJOR_NUM > 4) CPPUNIT_TEST(testKhmer); + CPPUNIT_TEST(testNorthernThai); #endif -#if (U_ICU_VERSION_MAJOR_NUM > 51) - CPPUNIT_TEST(testLao); #endif CPPUNIT_TEST(testJapanese); CPPUNIT_TEST(testChinese); @@ -884,12 +883,13 @@ void TestBreakIterator::testNorthernThai() CPPUNIT_ASSERT_MESSAGE("Should skip full word", aBounds.startPos == 0 && aBounds.endPos == aTest.getLength()); } -#endif -#if (U_ICU_VERSION_MAJOR_NUM > 4) // Not sure if any version earlier than 49 did have Khmer word boundary // dictionaries, 4.6 does not. +// As of icu 54, word boundary detection for Khmer is still considered +// insufficient, so icu khmer stuff is disabled + //A test to ensure that our khmer word boundary detection is useful //https://bugs.libreoffice.org/show_bug.cgi?id=52020 void TestBreakIterator::testKhmer() diff --git a/i18npool/source/breakiterator/breakiterator_unicode.cxx b/i18npool/source/breakiterator/breakiterator_unicode.cxx index 48a3619c2570..36786308c65f 100644 --- a/i18npool/source/breakiterator/breakiterator_unicode.cxx +++ b/i18npool/source/breakiterator/breakiterator_unicode.cxx @@ -124,7 +124,7 @@ void SAL_CALL BreakIterator_Unicode::loadICUBreakIterator(const com::sun::star:: OUStringToOString(breakRules[breakType], RTL_TEXTENCODING_ASCII_US).getStr(), &status), status); } //use icu's breakiterator for Thai, Tibetan and Dzongkha - else if (rLocale.Language != "th" && rLocale.Language != "lo" && rLocale.Language != "bo" && rLocale.Language != "dz" && rLocale.Language != "km") + else if (rLocale.Language != "th" && rLocale.Language != "lo" && rLocale.Language != "bo" && rLocale.Language != "dz") { status = U_ZERO_ERROR; OStringBuffer aUDName(64); |