From bf2232c99969987e5e825564a53a32df44fb1e90 Mon Sep 17 00:00:00 2001 From: George Kiagiadakis Date: Fri, 28 Feb 2014 13:37:30 +0200 Subject: [PATCH] waylandsink/waylandpool: call the start/stop methods of the parent class start() makes sure that the minimum ammount of buffers requested is allocated. stop() makes sure that buffers are actually destroyed and prevents filling the file system when resizing the surface a lot, because the wayland-shm-* files will stay on the file system as long as the wl_buffers created out of them are alive. --- ext/wayland/waylandpool.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/ext/wayland/waylandpool.c b/ext/wayland/waylandpool.c index 593d16f..b497552 100644 --- a/ext/wayland/waylandpool.c +++ b/ext/wayland/waylandpool.c @@ -57,6 +57,8 @@ gst_wl_meta_free (GstWlMeta * meta, GstBuffer * buffer) { g_object_unref (meta->display); munmap (meta->data, meta->size); + + GST_DEBUG ("destroying wl_buffer %p", meta->wbuffer); wl_buffer_destroy (meta->wbuffer); } @@ -208,7 +210,7 @@ gst_wayland_buffer_pool_start (GstBufferPool * pool) self->size = size; self->used = 0; - return TRUE; + return GST_BUFFER_POOL_CLASS (parent_class)->start (pool); } static gboolean @@ -225,7 +227,7 @@ gst_wayland_buffer_pool_stop (GstBufferPool * pool) self->size = 0; self->used = 0; - return TRUE; + return GST_BUFFER_POOL_CLASS (parent_class)->stop (pool); } static GstFlowReturn -- 2.7.4