More kicking

This commit is contained in:
Behdad Esfahbod 2011-07-21 12:16:45 -04:00
parent 192445aef2
commit d6b9c6d200
1 changed files with 19 additions and 8 deletions

View File

@ -38,23 +38,34 @@ get_glyph (hb_ot_shape_context_t *c, unsigned int i)
} }
static bool static bool
handle_single_char_cluster (hb_ot_shape_context_t *c, decompose_single_char_cluster (hb_ot_shape_context_t *c,
unsigned int i) unsigned int i)
{ {
if (get_glyph (c, i))
return FALSE;
/* Decompose */
return FALSE; return FALSE;
} }
static bool
handle_single_char_cluster (hb_ot_shape_context_t *c,
unsigned int i)
{
/* If the single char is supported by the font, we're good. */
if (get_glyph (c, i))
return FALSE;
/* Decompose */
return decompose_single_char_cluster (c, i);
}
static bool static bool
handle_multi_char_cluster (hb_ot_shape_context_t *c, handle_multi_char_cluster (hb_ot_shape_context_t *c,
unsigned int i, unsigned int start,
unsigned int end) unsigned int end)
{ {
/* If there's a variation-selector, give-up, it's just too hard. */ /* If there's a variation-selector, give-up, it's just too hard. */
for (unsigned int i = start; i < end; i++)
if (unlikely (is_variation_selector (c->buffer->info[i].codepoint)))
return FALSE;
return FALSE; return FALSE;
} }