diff --git a/lib/mks-paintable.c b/lib/mks-paintable.c index 614867d..e030a0f 100644 --- a/lib/mks-paintable.c +++ b/lib/mks-paintable.c @@ -374,6 +374,9 @@ mks_paintable_listener_scanout_dmabuf (MksPaintable *self, scanout_data->stride = stride; scanout_data->fourcc = fourcc; scanout_data->modifier = modifier; + if (self->scanout_data) + g_clear_fd (&self->scanout_data->dmabuf_fd, NULL); + g_clear_pointer (&self->scanout_data, g_free); self->scanout_data = scanout_data;