summaryrefslogtreecommitdiff
path: root/boilerplate
diff options
context:
space:
mode:
Diffstat (limited to 'boilerplate')
-rw-r--r--boilerplate/cairo-boilerplate-xcb.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/boilerplate/cairo-boilerplate-xcb.c b/boilerplate/cairo-boilerplate-xcb.c
index e301d1299..98b39ec58 100644
--- a/boilerplate/cairo-boilerplate-xcb.c
+++ b/boilerplate/cairo-boilerplate-xcb.c
@@ -174,6 +174,7 @@ find_depth (xcb_connection_t *connection,
}
static const cairo_user_data_key_t key;
+static const cairo_user_data_key_t key2;
struct similar {
xcb_connection_t *connection;
@@ -365,6 +366,7 @@ _cairo_boilerplate_xcb_create_surface (const char *name,
render_format,
width, height);
cairo_device_set_user_data (cairo_surface_get_device (surface), &key, info, free);
+ cairo_device_set_user_data (cairo_surface_get_device (surface), &key2, info->formats, free);
if (mode != CAIRO_BOILERPLATE_MODE_PERF)
_cairo_boilerplate_xcb_setup_test_surface(surface);
@@ -629,8 +631,8 @@ _cairo_boilerplate_xcb_create_render_0_0 (const char *name,
xtc->drawable,
render_format,
width, height);
+ free (formats);
if (cairo_surface_status (surface)) {
- free (formats);
xcb_disconnect (c);
free (xtc);
return surface;