[HarfBuzz] harfbuzz-ng: Branch 'master' - 2 commits
Behdad Esfahbod
behdad at kemper.freedesktop.org
Fri Jul 20 07:31:07 PDT 2012
src/hb-ot-shape-complex-indic.cc | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
New commits:
commit 51e764de441072e7c9f67de23e8ed717b9b8957d
Author: Behdad Esfahbod <behdad at behdad.org>
Date: Fri Jul 20 10:30:24 2012 -0400
[Indic] Unbreak old scriptures
Brings down failures with Lohit-Telugu from 57% to 1.40%.
diff --git a/src/hb-ot-shape-complex-indic.cc b/src/hb-ot-shape-complex-indic.cc
index 43eaf83..42e0f70 100644
--- a/src/hb-ot-shape-complex-indic.cc
+++ b/src/hb-ot-shape-complex-indic.cc
@@ -123,8 +123,9 @@ consonant_position (hb_codepoint_t u, hb_ot_map_t *map, hb_font_t *font)
if ((u & ~0x007F) == 0x0D80) virama = 0x0DCA; /* Sinahla */
hb_codepoint_t glyphs[2];
- hb_font_get_glyph (font, virama, 0, &glyphs[0]);
- hb_font_get_glyph (font, u, 0, &glyphs[1]);
+ unsigned int virama_pos = IS_OLD_INDIC_TAG (map->get_chosen_script (0)) ? 1 : 0;
+ hb_font_get_glyph (font, virama, 0, &glyphs[virama_pos]);
+ hb_font_get_glyph (font, u, 0, &glyphs[1-virama_pos]);
hb_face_t *face = hb_font_get_face (font);
if (would_substitute (glyphs, ARRAY_LENGTH (glyphs), HB_TAG('p','r','e','f'), map, face)) return POS_BELOW_C;
commit 900cf3d449bf36d4f8b1474590cae925fef48fc8
Author: Behdad Esfahbod <behdad at behdad.org>
Date: Fri Jul 20 10:18:23 2012 -0400
Minor
diff --git a/src/hb-ot-shape-complex-indic.cc b/src/hb-ot-shape-complex-indic.cc
index 19ced2d..43eaf83 100644
--- a/src/hb-ot-shape-complex-indic.cc
+++ b/src/hb-ot-shape-complex-indic.cc
@@ -590,7 +590,7 @@ initial_reordering_consonant_syllable (const hb_ot_map_t *map, hb_buffer_t *buff
/* Reorder characters */
for (unsigned int i = start; i < base; i++)
- info[i].indic_position() = MIN ((unsigned int) POS_PRE_C, info[i].indic_position());
+ info[i].indic_position() = MIN (POS_PRE_C, (indic_position_t) info[i].indic_position());
if (base < end)
info[base].indic_position() = POS_BASE_C;
More information about the HarfBuzz
mailing list