function cairo_text_extents causes resource leaks
Submitted by loplrf
Assigned to Chris Wilson @ickle
Link to original bug (#105739)
Description
cairo_text_extents
refs the current font face of cairo_t, and leads to resource leaks. The callstack is as follows
#0 cairo_font_face_reference (font_face=0x419908) at cairo-font-face.c:134 #1 (closed) cairo_scaled_font_create (font_face=0x439410, font_matrix=0x419340, ctm=0xbfffedb0, options=0xbfffede0) at cairo-scaled-font.c:1179 #2 _cairo_gstate_ensure_scaled_font (gstate=0x4192f0) at cairo-gstate.c:1915 #3 (closed) _cairo_gstate_get_scaled_font (gstate=0x4192f0, scaled_font=0xbfffee54) at cairo-gstate.c:1787 #4 (closed) _cairo_default_context_get_scaled_font (abstract_cr=0x4192d0) at cairo-default-context.c:1300 #5 cairo_get_scaled_font (cr=0x4192d0) at cairo.c:3348 #6 cairo_text_extents (cr=0x4192d0, utf8=0x400d8e "Hello, Cairo!", extents=0xbfffeee8) at cairo.c:3398