From 5cc1b66a3e470bd2685948446ab6d50887c062f6 Mon Sep 17 00:00:00 2001 From: Caolan McNamara Date: Fri, 19 Jan 2007 10:17:23 +0000 Subject: [PATCH] Resolves: rhbz#214948 icu.icu5506.multiplevowels.patch --- icu.icu5506.multiplevowels.patch | 49 ++++++++++++++++++++++++++++++++ icu.spec | 5 +++- 2 files changed, 53 insertions(+), 1 deletion(-) diff --git a/icu.icu5506.multiplevowels.patch b/icu.icu5506.multiplevowels.patch index 5690ec7..a58ec64 100644 --- a/icu.icu5506.multiplevowels.patch +++ b/icu.icu5506.multiplevowels.patch @@ -10,3 +10,52 @@ diff -ur icu.orig/source/layout/IndicReordering.cpp icu/source/layout/IndicReord {-1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, // 6 - vowel mark {-1, -1, -1, -1, -1, -1, 3, 2, -1, -1, -1, -1, -1, -1, -1}, // 7 - consonant virama ZWJ, consonant ZWJ virama {-1, 6, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4, -1}, // 8 - independent vowels that can take a virama +@@ -423,6 +423,48 @@ + + state = stateTable[state][charClass & CF_CLASS_MASK]; + ++ /*for the components of split matra*/ ++ if ((charCount >= cursor + 3) && ++ (chars[cursor] == 0x0DD9 && chars[cursor + 1] == 0x0DCF && chars[cursor + 2] == 0x0DCA)) { /*for 3 split matra of Sinhala*/ ++ return cursor + 3; ++ } ++ else if ((charCount >= cursor + 3) && ++ (chars[cursor] == 0x0CC6 && chars[cursor + 1] == 0x0CC2 && chars[cursor + 2] == 0x0CD5)) { /*for 3 split matra of Kannada*/ ++ return cursor + 3; ++ } ++ /*for 2 split matra*/ ++ else if (charCount >= cursor + 2) { ++ /*for Bengali*/ ++ if ((chars[cursor] == 0x09C7 && chars[cursor + 1] == 0x09BE) || ++ (chars[cursor] == 0x09C7 && chars[cursor + 1] == 0x09D7) || ++ /*for Oriya*/ ++ (chars[cursor] == 0x0B47 && chars[cursor + 1] == 0x0B3E) || ++ (chars[cursor] == 0x0B47 && chars[cursor + 1] == 0x0B56) || ++ (chars[cursor] == 0x0B47 && chars[cursor + 1] == 0x0B57) || ++ /*for Tamil*/ ++ (chars[cursor] == 0x0BC6 && chars[cursor + 1] == 0x0BBE) || ++ (chars[cursor] == 0x0BC6 && chars[cursor + 1] == 0x0BD7) || ++ (chars[cursor] == 0x0BC7 && chars[cursor + 1] == 0x0BBE) || ++ /*for Malayalam*/ ++ (chars[cursor] == 0x0D46 && chars[cursor + 1] == 0x0D3E) || ++ (chars[cursor] == 0x0D46 && chars[cursor + 1] == 0x0D57) || ++ (chars[cursor] == 0x0D47 && chars[cursor + 1] == 0x0D3E) || ++ /*for Sinhala*/ ++ (chars[cursor] == 0x0DD9 && chars[cursor + 1] == 0x0DCA) || ++ (chars[cursor] == 0x0DD9 && chars[cursor + 1] == 0x0DCF) || ++ (chars[cursor] == 0x0DD9 && chars[cursor + 1] == 0x0DDF) || ++ (chars[cursor] == 0x0DDC && chars[cursor + 1] == 0x0DCA) || ++ /*for Telugu*/ ++ (chars[cursor] == 0x0C46 && chars[cursor + 1] == 0x0C56) || ++ /*for Kannada*/ ++ (chars[cursor] == 0x0CBF && chars[cursor + 1] == 0x0CD5) || ++ (chars[cursor] == 0x0CC6 && chars[cursor + 1] == 0x0CD5) || ++ (chars[cursor] == 0x0CC6 && chars[cursor + 1] == 0x0CD6) || ++ (chars[cursor] == 0x0CC6 && chars[cursor + 1] == 0x0CC2) || ++ (chars[cursor] == 0x0CCA && chars[cursor + 1] == 0x0CD5)) ++ return cursor + 2; ++ } ++ + if (state < 0) { + break; + } diff --git a/icu.spec b/icu.spec index 2f6917f..5ed0ec7 100644 --- a/icu.spec +++ b/icu.spec @@ -1,6 +1,6 @@ Name: icu Version: 3.6 -Release: 14 +Release: 15 Summary: International Components for Unicode Group: System Environment/Libraries @@ -154,6 +154,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Fri Jan 19 2007 Caolan McNamara - 3.6-15 +- Resolves: rhbz#214948 icu.icu5506.multiplevowels.patch + * Thu Jan 09 2007 Caolan McNamara - 3.6-14 - Related: rhbz#216089 add icu.icu5557.safety.patch