summaryrefslogtreecommitdiff
path: root/src/cairo-xcb-surface.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/cairo-xcb-surface.c')
-rw-r--r--src/cairo-xcb-surface.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/cairo-xcb-surface.c b/src/cairo-xcb-surface.c
index d5146592..6f246f80 100644
--- a/src/cairo-xcb-surface.c
+++ b/src/cairo-xcb-surface.c
@@ -1560,6 +1560,7 @@ _cairo_xcb_surface_set_clip_region (void *abstract_surface,
xcb_rectangle_t *rects = NULL;
int n_boxes, i;
+ n_boxes = 0;
status = _cairo_region_get_boxes (region, &n_boxes, &boxes);
if (status)
return status;
@@ -1683,6 +1684,8 @@ static const cairo_surface_backend_t cairo_xcb_surface_backend = {
_cairo_xcb_surface_composite,
_cairo_xcb_surface_fill_rectangles,
_cairo_xcb_surface_composite_trapezoids,
+ NULL, /* create_span_renderer */
+ NULL, /* check_span_renderer */
NULL, /* copy_page */
NULL, /* show_page */
_cairo_xcb_surface_set_clip_region,
@@ -2416,6 +2419,9 @@ _cairo_xcb_surface_emit_glyphs (cairo_xcb_surface_t *dst,
}
}
+ /* We wouldn't want to leak memory, would we? */
+ free(output_glyphs);
+
return CAIRO_STATUS_SUCCESS;
}