void _cairo_gl_surface_scaled_glyph_fini (cairo_scaled_glyph_t *scaled_glyph, cairo_scaled_font_t *scaled_font) { cairo_gl_glyph_private_t *glyph_private; glyph_private = scaled_glyph->surface_private; if (glyph_private != NULL) { glyph_private->node.owner = NULL; if (! glyph_private->node.pinned) { /* XXX thread-safety? Probably ok due to the frozen scaled-font. */ _cairo_rtree_node_remove (&glyph_private->cache->rtree, &glyph_private->node); } } }
static void _cairo_gl_glyph_fini (cairo_scaled_glyph_private_t *glyph_private, cairo_scaled_glyph_t *scaled_glyph, cairo_scaled_font_t *scaled_font) { cairo_gl_glyph_t *priv = cairo_container_of (glyph_private, cairo_gl_glyph_t, base); assert (priv->glyph); _cairo_gl_node_destroy (&priv->node); /* XXX thread-safety? Probably ok due to the frozen scaled-font. */ if (! priv->node.pinned) _cairo_rtree_node_remove (&priv->cache->rtree, &priv->node); assert (priv->glyph == NULL); }