[HarfBuzz] harfbuzz: Branch 'master'

Behdad Esfahbod behdad at kemper.freedesktop.org
Tue Feb 6 16:40:02 UTC 2018


 src/hb-aat-layout-common-private.hh |   11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

New commits:
commit f49256d80f19bc265e6a197719345313ba26f9d6
Author: Behdad Esfahbod <behdad at behdad.org>
Date:   Tue Feb 6 11:39:36 2018 -0500

    [aat] Simplify unsafe-to-break logic

diff --git a/src/hb-aat-layout-common-private.hh b/src/hb-aat-layout-common-private.hh
index 74f9fdb0..b91634ab 100644
--- a/src/hb-aat-layout-common-private.hh
+++ b/src/hb-aat-layout-common-private.hh
@@ -639,15 +639,10 @@ struct StateTableDriver
        * go differently if we start from state 0 here. */
       if (state && buffer->idx)
       {
-	/* Special-case easy cases: if starting here at state 0 is not
-	 * actionable, and leads to the same next state, then it's safe.
-	 * Let's hope...  Maybe disable the conditional later, if proves
-	 * insufficient. */
+	/* If starting here at state 0 has the exact same entry, it's safe
+	 * to break as before as far as we are concerned. */
 	const Entry<EntryData> *start_entry = machine.get_entryZ (0, klass);
-	if (start_entry->newState != entry->newState ||
-	    (start_entry->flags & context_t::DontAdvance) != (entry->flags & context_t::DontAdvance) ||
-	    c->is_actionable (this, entry) ||
-	    c->is_actionable (this, start_entry))
+	if (memcmp (start_entry, entry, sizeof (*entry)))
 	  buffer->unsafe_to_break (buffer->idx - 1, buffer->idx + 1);
       }
 


More information about the HarfBuzz mailing list