summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBehdad Esfahbod <behdad@behdad.org>2012-05-11 16:51:23 +0200
committerBehdad Esfahbod <behdad@behdad.org>2012-05-11 16:51:23 +0200
commit67ea29af49bb08ee679914076808327992cf6676 (patch)
tree3a34dba7b8acaabcf13e8ed4ddf9383a777f18a4 /src
parentebe29733d44fe0fa9fb30f946ab0dd7a40336a24 (diff)
[Indic] Add example of different Uniscribe behavior
Diffstat (limited to 'src')
-rw-r--r--src/hb-ot-shape-complex-indic.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/hb-ot-shape-complex-indic.cc b/src/hb-ot-shape-complex-indic.cc
index 4d0c2be4..4a5f3630 100644
--- a/src/hb-ot-shape-complex-indic.cc
+++ b/src/hb-ot-shape-complex-indic.cc
@@ -373,6 +373,10 @@ initial_reordering_consonant_syllable (const hb_ot_map_t *map, hb_buffer_t *buff
if ((FLAG (info[i].indic_category()) & (FLAG (OT_ZWNJ) | FLAG (OT_ZWJ) | FLAG (OT_N) | FLAG (OT_H))))
info[i].indic_position() = info[i - 1].indic_position();
} else {
+ /*
+ * Uniscribe doesn't move the Halant with Left Matra.
+ * TEST: U+092B,U+093F,U+094DE
+ */
/* Please update the non-Uniscribe branch when touching this! */
for (unsigned int i = start + 1; i < end; i++)
if ((FLAG (info[i].indic_category()) & (FLAG (OT_ZWNJ) | FLAG (OT_ZWJ) | FLAG (OT_N) | FLAG (OT_H)))) {
@@ -380,7 +384,6 @@ initial_reordering_consonant_syllable (const hb_ot_map_t *map, hb_buffer_t *buff
if (info[i].indic_category() == OT_H && info[i].indic_position() == POS_LEFT_MATRA)
for (unsigned int j = i; j > start; j--)
if (info[j - 1].indic_position() != POS_LEFT_MATRA) {
- /* Uniscribe doesn't move the Halant with Left Matra. */
info[i].indic_position() = info[j - 1].indic_position();
break;
}