src/hb-ot-layout-gsub-table.hh | 4 +++- util/options.cc | 6 +++--- 2 files changed, 6 insertions(+), 4 deletions(-)
New commits: commit 52ebdff49d13f239efc886de935d47be9860f6e5 Author: Behdad Esfahbod <[email protected]> Date: Tue Sep 27 12:38:16 2011 -0400 Fix GSUB lookuptype 1 subtype 1 delta wrapping diff --git a/src/hb-ot-layout-gsub-table.hh b/src/hb-ot-layout-gsub-table.hh index 4f4c171..4c423cc 100644 --- a/src/hb-ot-layout-gsub-table.hh +++ b/src/hb-ot-layout-gsub-table.hh @@ -47,7 +47,9 @@ struct SingleSubstFormat1 if (likely (index == NOT_COVERED)) return false; - glyph_id += deltaGlyphID; + /* According to the Adobe Annotated OpenType Suite, result is always + * limited to 16bit. */ + glyph_id = (glyph_id + deltaGlyphID) & 0xFFFF; c->replace_glyph (glyph_id); return true; commit 5857720cd35078d1c3906c8b2db3190b5166b66f Author: Behdad Esfahbod <[email protected]> Date: Tue Sep 27 12:36:26 2011 -0400 [util] s/%d/%u/ when printing glyph ids and clusters diff --git a/util/options.cc b/util/options.cc index 29e0b4f..349c199 100644 --- a/util/options.cc +++ b/util/options.cc @@ -650,12 +650,12 @@ format_options_t::serialize (hb_buffer_t *buffer, if (!FT_Get_Glyph_Name (ft_face, info->codepoint, glyph_name, sizeof (glyph_name))) g_string_append_printf (gs, "%s", glyph_name); else - g_string_append_printf (gs, "gid%d", info->codepoint); + g_string_append_printf (gs, "gid%u", info->codepoint); } else - g_string_append_printf (gs, "%d", info->codepoint); + g_string_append_printf (gs, "%u", info->codepoint); if (show_clusters) - g_string_append_printf (gs, "=%d", info->cluster); + g_string_append_printf (gs, "=%u", info->cluster); if (show_positions && (pos->x_offset || pos->y_offset)) { g_string_append_c (gs, '@'); _______________________________________________ HarfBuzz mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/harfbuzz
