diff --git a/src/cairo-gl-device.c b/src/cairo-gl-device.c index 87ceb666c..ae4669aba 100644 --- a/src/cairo-gl-device.c +++ b/src/cairo-gl-device.c @@ -108,6 +108,9 @@ _gl_finish (void *device) _cairo_gl_context_fini_shaders (ctx); + for (n = 0; n < ARRAY_LENGTH (ctx->glyph_cache); n++) + _cairo_gl_glyph_cache_fini (ctx, &ctx->glyph_cache[n]); + _gl_unlock (device); } @@ -131,9 +134,6 @@ _gl_destroy (void *device) free (font); } - for (n = 0; n < ARRAY_LENGTH (ctx->glyph_cache); n++) - _cairo_gl_glyph_cache_fini (ctx, &ctx->glyph_cache[n]); - _cairo_array_fini (&ctx->tristrip_indices); cairo_region_destroy (ctx->clip_region);