font = cairo_pdf_ft_font_create (document, unscaled_font, scale); if (font == NULL)
pdf_font = cairo_pdf_ft_font_create (document, unscaled_font); if (pdf_font == NULL)
_cairo_pdf_document_get_font (cairo_pdf_document_t	*document,			      cairo_unscaled_font_t	*unscaled_font,			      cairo_font_scale_t	*scale){    cairo_pdf_font_t *font;    unsigned int num_fonts, i;    num_fonts = _cairo_array_num_elements (&document->fonts);    for (i = 0; i < num_fonts; i++) {	_cairo_array_copy_element (&document->fonts, i, &font);	if (font->unscaled_font == unscaled_font)	    return font;    }    /* FIXME: Figure out here which font backend is in use and call     * the appropriate constructor. */    font = cairo_pdf_ft_font_create (document, unscaled_font, scale);    if (font == NULL)	return NULL;    if (_cairo_array_append (&document->fonts, &font, 1) == NULL) {	cairo_pdf_font_destroy (font);	return NULL;    }    return font;}