From 04ca9fbdf5c9ee85b888f4ae774c214d7a429595 Mon Sep 17 00:00:00 2001 From: Johan Malm Date: Sun, 13 Feb 2022 21:59:14 +0000 Subject: [PATCH] buffer: use cairo_surface_destroy() ...rather than free(buffer->data) --- src/buffer.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/buffer.c b/src/buffer.c index 69f55251..8ce275a5 100644 --- a/src/buffer.c +++ b/src/buffer.c @@ -43,10 +43,9 @@ data_buffer_destroy(struct wlr_buffer *wlr_buffer) { struct lab_data_buffer *buffer = data_buffer_from_buffer(wlr_buffer); if (buffer->cairo) { + cairo_surface_t *surf = cairo_get_target(buffer->cairo); cairo_destroy(buffer->cairo); - } - if (buffer->data) { - free(buffer->data); + cairo_surface_destroy(surf); } free(buffer); } @@ -96,7 +95,9 @@ buffer_create(uint32_t width, uint32_t height, float scale) if (!buffer->data) { cairo_destroy(buffer->cairo); + cairo_surface_destroy(surf); free(buffer); + buffer = NULL; } return buffer; }