summaryrefslogtreecommitdiff
path: root/omx/gstomxbufferpool.c
diff options
context:
space:
mode:
authorGuillaume Desmottes <guillaume.desmottes@collabora.co.uk>2018-05-28 12:20:45 +0200
committerGuillaume Desmottes <guillaume.desmottes@collabora.co.uk>2018-08-30 10:59:30 +0200
commit7b6be347a6dc94c0ca16272fa249bc77b68f43ee (patch)
treef0708dc76d7e0fd04eb0d10b697cbb6c17885841 /omx/gstomxbufferpool.c
parentd2f7e21ab9be7f3d543a50b6cbac6dffca33384a (diff)
downloadgst-omx-7b6be347a6dc94c0ca16272fa249bc77b68f43ee.tar.gz
omxbufferpool: deallocate OMX buffers when stopping
The pool is stopped when all the buffers have been released. Deallocate when stopping so we are sure that the buffers aren't still used by another element. https://bugzilla.gnome.org/show_bug.cgi?id=796918
Diffstat (limited to 'omx/gstomxbufferpool.c')
-rw-r--r--omx/gstomxbufferpool.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/omx/gstomxbufferpool.c b/omx/gstomxbufferpool.c
index 4e2033f..995687b 100644
--- a/omx/gstomxbufferpool.c
+++ b/omx/gstomxbufferpool.c
@@ -247,6 +247,9 @@ gst_omx_buffer_pool_stop (GstBufferPool * bpool)
/* Remove any buffers that are there */
g_ptr_array_set_size (pool->buffers, 0);
+ GST_DEBUG_OBJECT (pool, "deallocate OMX buffers");
+ gst_omx_port_deallocate_buffers (pool->port);
+
if (pool->caps)
gst_caps_unref (pool->caps);
pool->caps = NULL;