[GSUB/GPOS] More buffer message for contextuals

Fixes https://github.com/harfbuzz/harfbuzz/issues/3753
This commit is contained in:
Behdad Esfahbod 2022-07-24 18:48:38 -06:00
parent 59b05359cd
commit bc80e4b923
1 changed files with 20 additions and 0 deletions

View File

@ -1602,9 +1602,29 @@ static inline void apply_lookup (hb_ot_apply_context_t *c,
if (unlikely (buffer->max_ops <= 0)) if (unlikely (buffer->max_ops <= 0))
break; break;
if (HB_BUFFER_MESSAGE_MORE && c->buffer->messaging ())
{
if (buffer->have_output)
c->buffer->sync_so_far ();
c->buffer->message (c->font,
"recursing to lookup %u at %d",
(unsigned) lookupRecord[i].lookupListIndex,
buffer->idx);
}
if (!c->recurse (lookupRecord[i].lookupListIndex)) if (!c->recurse (lookupRecord[i].lookupListIndex))
continue; continue;
if (HB_BUFFER_MESSAGE_MORE && c->buffer->messaging ())
{
if (buffer->have_output)
c->buffer->sync_so_far ();
c->buffer->message (c->font,
"recursed to lookup %u at %d",
(unsigned) lookupRecord[i].lookupListIndex,
buffer->idx);
}
unsigned int new_len = buffer->backtrack_len () + buffer->lookahead_len (); unsigned int new_len = buffer->backtrack_len () + buffer->lookahead_len ();
int delta = new_len - orig_len; int delta = new_len - orig_len;