diff options
author | Behdad Esfahbod <behdad@behdad.org> | 2008-06-05 18:42:50 -0400 |
---|---|---|
committer | Behdad Esfahbod <behdad@behdad.org> | 2008-06-05 18:42:50 -0400 |
commit | 6702c7edc4a6e3e1129d8c6e6b4989ba2410add4 (patch) | |
tree | f55911927d6cbe496d9030bd1592d67f8d7bc760 /src/cairo-user-font.c | |
parent | 3b1b0746959956155dd33cf71989e7bcb63886f5 (diff) |
[user-font] Let user decide to fall back to unicode_to_glyph in text_to_glyphs
User does this by not setting *num_glyphs.
Diffstat (limited to 'src/cairo-user-font.c')
-rw-r--r-- | src/cairo-user-font.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/cairo-user-font.c b/src/cairo-user-font.c index b29bad17..a09343db 100644 --- a/src/cairo-user-font.c +++ b/src/cairo-user-font.c @@ -265,6 +265,7 @@ _cairo_user_text_to_glyphs (void *abstract_font, int i; *glyphs = NULL; + *num_glyphs = -1; status = face->scaled_font_methods.text_to_glyphs (&scaled_font->base, utf8, glyphs, num_glyphs); @@ -278,6 +279,9 @@ _cairo_user_text_to_glyphs (void *abstract_font, return status; } + if (*num_glyphs < 0) + return CAIRO_INT_STATUS_UNSUPPORTED; + /* Convert from font space to user space and add x,y */ for (i = 0; i < *num_glyphs; i++) { double gx = (*glyphs)[i].x; |