src/hb-aat-layout-common-private.hh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
New commits: commit 2971e9da49d6ac07f8a9a4e9b00e167b800a5c7f Author: Behdad Esfahbod <[email protected]> Date: Tue Feb 6 11:48:04 2018 -0500 [aat] Adjust unsafe-to-break logic some more I believe I'm happy with it now. diff --git a/src/hb-aat-layout-common-private.hh b/src/hb-aat-layout-common-private.hh index b91634ab..fc04941a 100644 --- a/src/hb-aat-layout-common-private.hh +++ b/src/hb-aat-layout-common-private.hh @@ -639,10 +639,10 @@ struct StateTableDriver * go differently if we start from state 0 here. */ if (state && buffer->idx) { - /* 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 (memcmp (start_entry, entry, sizeof (*entry))) + /* If there's no action and we're just epsilon-transitioning to state 0, + * safe to break. */ + if (c->is_actionable (this, entry) || + !(entry->newState == 0 && entry->flags == context_t::DontAdvance)) buffer->unsafe_to_break (buffer->idx - 1, buffer->idx + 1); } _______________________________________________ HarfBuzz mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/harfbuzz
