Refactor the two remaining uses of _hb_ot_layout_skip_mark()

This commit is contained in:
Behdad Esfahbod 2012-01-18 21:19:32 -05:00
parent 506ffeb8e7
commit 7d479900cd
2 changed files with 6 additions and 3 deletions

View File

@ -392,7 +392,7 @@ struct Ligature
for (unsigned int i = 1; i < count; i++) for (unsigned int i = 1; i < count; i++)
{ {
while (_hb_ot_layout_skip_mark (c->face, &c->buffer->info[c->buffer->idx], c->lookup_props, NULL)) while (c->should_mark_skip_current_glyph ())
{ {
c->buffer->info[c->buffer->idx].lig_comp() = i; c->buffer->info[c->buffer->idx].lig_comp() = i;
c->buffer->info[c->buffer->idx].lig_id() = lig_id; c->buffer->info[c->buffer->idx].lig_id() = lig_id;

View File

@ -67,7 +67,6 @@ struct hb_apply_context_t
unsigned int lookup_props; unsigned int lookup_props;
unsigned int property; /* propety of first glyph */ unsigned int property; /* propety of first glyph */
struct mark_skipping_forward_iterator_t struct mark_skipping_forward_iterator_t
{ {
inline mark_skipping_forward_iterator_t (hb_apply_context_t *c_, inline mark_skipping_forward_iterator_t (hb_apply_context_t *c_,
@ -146,6 +145,10 @@ struct hb_apply_context_t
unsigned int num_items; unsigned int num_items;
}; };
inline bool should_mark_skip_current_glyph (void) const
{
return _hb_ot_layout_skip_mark (face, &buffer->info[buffer->idx], lookup_props, NULL);
}
@ -314,7 +317,7 @@ static inline bool apply_lookup (hb_apply_context_t *c,
*/ */
for (unsigned int i = 0; i < count; /* NOP */) for (unsigned int i = 0; i < count; /* NOP */)
{ {
while (_hb_ot_layout_skip_mark (c->face, &c->buffer->info[c->buffer->idx], c->lookup_props, NULL)) while (c->should_mark_skip_current_glyph ())
{ {
if (unlikely (c->buffer->idx == end)) if (unlikely (c->buffer->idx == end))
return true; return true;