|
|
@ -391,7 +391,7 @@ struct Ligature |
|
|
|
: HB_OT_LAYOUT_GLYPH_CLASS_LIGATURE); |
|
|
|
: HB_OT_LAYOUT_GLYPH_CLASS_LIGATURE); |
|
|
|
|
|
|
|
|
|
|
|
/* Allocate new ligature id */ |
|
|
|
/* Allocate new ligature id */ |
|
|
|
unsigned int lig_id = c->buffer->allocate_lig_id (); |
|
|
|
unsigned int lig_id = allocate_lig_id (c->buffer); |
|
|
|
c->buffer->info[c->buffer->i].component() = 0; |
|
|
|
c->buffer->info[c->buffer->i].component() = 0; |
|
|
|
c->buffer->info[c->buffer->i].lig_id() = lig_id; |
|
|
|
c->buffer->info[c->buffer->i].lig_id() = lig_id; |
|
|
|
|
|
|
|
|
|
|
@ -427,6 +427,12 @@ struct Ligature |
|
|
|
return true; |
|
|
|
return true; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
inline uint16_t allocate_lig_id (hb_buffer_t *buffer) const { |
|
|
|
|
|
|
|
uint16_t lig_id = buffer->next_serial (); |
|
|
|
|
|
|
|
if (unlikely (!lig_id)) lig_id = buffer->next_serial (); /* in case of overflows */ |
|
|
|
|
|
|
|
return lig_id; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public: |
|
|
|
public: |
|
|
|
inline bool sanitize (hb_sanitize_context_t *c) { |
|
|
|
inline bool sanitize (hb_sanitize_context_t *c) { |
|
|
|
TRACE_SANITIZE (); |
|
|
|
TRACE_SANITIZE (); |
|
|
|