[HarfBuzz] harfbuzz: Branch 'master' - 3 commits
Behdad Esfahbod
behdad at kemper.freedesktop.org
Wed Nov 4 22:48:21 PST 2015
src/hb-ot-layout-gpos-table.hh | 3 +++
src/hb-ot-shape.cc | 7 +++++--
2 files changed, 8 insertions(+), 2 deletions(-)
New commits:
commit ff31b3c1b8a2a21b57dba37eb5bb5db0579e0640
Author: Behdad Esfahbod <behdad at behdad.org>
Date: Wed Nov 4 22:42:41 2015 -0800
Skip GPOS cursive / attachment adjustmnent if none happened
I'm starting to really like how free these new scratch_flags are.
diff --git a/src/hb-ot-layout-gpos-table.hh b/src/hb-ot-layout-gpos-table.hh
index 568b5f6..3bb0913 100644
--- a/src/hb-ot-layout-gpos-table.hh
+++ b/src/hb-ot-layout-gpos-table.hh
@@ -1602,6 +1602,9 @@ GPOS::position_finish (hb_font_t *font HB_UNUSED, hb_buffer_t *buffer)
for (unsigned int i = 0; i < len; i++)
fix_cursive_minor_offset (pos, i, direction);
+ if (!(buffer->scratch_flags & HB_BUFFER_SCRATCH_FLAG_HAS_NON_ASCII))
+ return;
+
/* Handle attachments */
for (unsigned int i = 0; i < len; i++)
fix_mark_attachment (pos, i, direction);
commit 0f407325f6923db11d332585e8250e3646cb74d6
Author: Behdad Esfahbod <behdad at behdad.org>
Date: Wed Nov 4 22:28:44 2015 -0800
Minor
diff --git a/src/hb-ot-shape.cc b/src/hb-ot-shape.cc
index c43b5bc..4b2732b 100644
--- a/src/hb-ot-shape.cc
+++ b/src/hb-ot-shape.cc
@@ -580,7 +580,6 @@ hb_ot_substitute_complex (hb_ot_shape_context_t *c)
{
hb_buffer_t *buffer = c->buffer;
- _hb_buffer_allocate_gsubgpos_vars (buffer);
hb_ot_layout_substitute_start (c->font, buffer);
if (!hb_ot_layout_has_glyph_classes (c->face))
@@ -597,6 +596,9 @@ static inline void
hb_ot_substitute (hb_ot_shape_context_t *c)
{
hb_ot_substitute_default (c);
+
+ _hb_buffer_allocate_gsubgpos_vars (c->buffer);
+
hb_ot_substitute_complex (c);
}
commit 497a6c2071cd0638e4c6af07621d01335fd963a9
Author: Behdad Esfahbod <behdad at behdad.org>
Date: Wed Nov 4 22:24:19 2015 -0800
Skip forming clusters if text is all ASCII
diff --git a/src/hb-ot-shape.cc b/src/hb-ot-shape.cc
index e0331cd..c43b5bc 100644
--- a/src/hb-ot-shape.cc
+++ b/src/hb-ot-shape.cc
@@ -263,7 +263,8 @@ hb_insert_dotted_circle (hb_buffer_t *buffer, hb_font_t *font)
static void
hb_form_clusters (hb_buffer_t *buffer)
{
- if (buffer->cluster_level != HB_BUFFER_CLUSTER_LEVEL_MONOTONE_GRAPHEMES)
+ if (!(buffer->scratch_flags & HB_BUFFER_SCRATCH_FLAG_HAS_NON_ASCII) ||
+ buffer->cluster_level != HB_BUFFER_CLUSTER_LEVEL_MONOTONE_GRAPHEMES)
return;
/* Loop duplicated in hb_ensure_native_direction(). */
More information about the HarfBuzz
mailing list