bufferpool: pass acquire params to alloc_buffer
authorVíctor Manuel Jáquez Leal <vjaquez@igalia.com>
Wed, 10 Feb 2016 13:01:54 +0000 (14:01 +0100)
committerNicolas Dufresne <nicolas.dufresne@collabora.com>
Thu, 11 Feb 2016 17:11:20 +0000 (12:11 -0500)
When allocating a new buffer in the pool, both the do_alloc_buffer() and the
vmethod, alloc_buffer(), receive the parameter GstBufferPoolAcquireParams.

Nonetheless, when default_acquire_buffer() calls the do_alloc_buffer() it does
not pass the received GstBufferPoolAcquireParams, so when the user pass those
parameters they are ignored by alloc_buffer() vmethod.

This one-liner patch pass the received acquire params to do_alloc_buffer().

https://bugzilla.gnome.org/show_bug.cgi?id=761824

gst/gstbufferpool.c

index 3bbff3428ef9a44d3c5c955b48f59425c6f101ef..a54b42ddd513efb92935d31a746d4d77e37d1df8 100644 (file)
@@ -1088,7 +1088,7 @@ default_acquire_buffer (GstBufferPool * pool, GstBuffer ** buffer,
 
     /* no buffer, try to allocate some more */
     GST_LOG_OBJECT (pool, "no buffer, trying to allocate");
-    result = do_alloc_buffer (pool, buffer, NULL);
+    result = do_alloc_buffer (pool, buffer, params);
     if (G_LIKELY (result == GST_FLOW_OK))
       /* we have a buffer, return it */
       break;