summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog8
-rw-r--r--modules/indic/indic-ot.c23
2 files changed, 28 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 28ca1eb0..99bdc606 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2006-12-07 Behdad Esfahbod <behdad@gnome.org>
+
+ Red Hat Bug 216424: [te_IN] pango - consonant + dependent vowel (ai)
+ Composed char is not rendering properly
+ Patch from LingNing Zhang
+
+ * modules/indic/indic-ot.c (indic_ot_reorder): Fix it!
+
2006-12-06 Behdad Esfahbod <behdad@gnome.org>
Red Hat Bug 216850: Issue in combination with vowels (ml_IN)
diff --git a/modules/indic/indic-ot.c b/modules/indic/indic-ot.c
index 68d7f105..47df96a4 100644
--- a/modules/indic/indic-ot.c
+++ b/modules/indic/indic-ot.c
@@ -437,9 +437,26 @@ glong indic_ot_reorder(const gunichar *chars, const glong *utf8_offsets, glong c
}
if ((class_table->scriptFlags & SF_MATRAS_AFTER_BASE) != 0) {
- writeMbelow(&output);
- writeMabove(&output);
- writeMpost(&output);
+ gboolean is_for_0C48 = FALSE;
+ if (output.fOutChars != NULL) { /*for 0x0C48 of Telugu*/
+ int t;
+ for (t = prev; t < syllable; t++) {
+ if (chars[t] == 0x0C48) {
+ writeMabove(&output);
+ writeMbelow(&output);
+ writeMpost(&output);
+
+ is_for_0C48 = TRUE;
+ break;
+ }
+ }
+ }
+
+ if (!is_for_0C48) {
+ writeMbelow(&output);
+ writeMabove(&output);
+ writeMpost(&output);
+ }
}
/* write below-base consonants */