summaryrefslogtreecommitdiff
path: root/src/cairo-user-font.c
diff options
context:
space:
mode:
authorBehdad Esfahbod <behdad@behdad.org>2008-06-05 18:42:50 -0400
committerBehdad Esfahbod <behdad@behdad.org>2008-06-05 18:42:50 -0400
commit6702c7edc4a6e3e1129d8c6e6b4989ba2410add4 (patch)
treef55911927d6cbe496d9030bd1592d67f8d7bc760 /src/cairo-user-font.c
parent3b1b0746959956155dd33cf71989e7bcb63886f5 (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.c4
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;