v4l2src: release buffer if create fails
authorPhilipp Zabel <p.zabel@pengutronix.de>
Thu, 24 Nov 2016 13:41:52 +0000 (14:41 +0100)
committerNicolas Dufresne <nicolas.dufresne@collabora.com>
Thu, 24 Nov 2016 16:47:07 +0000 (11:47 -0500)
gst_base_src_get_range does not expect a buffer to be returned in
the error case, so we are leaking a reference here if create fails.

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

sys/v4l2/gstv4l2src.c

index 3b722b2..0149814 100644 (file)
@@ -873,6 +873,7 @@ alloc_failed:
   }
 error:
   {
+    gst_buffer_replace (buf, NULL);
     if (ret == GST_V4L2_FLOW_LAST_BUFFER) {
       GST_ELEMENT_ERROR (src, RESOURCE, FAILED,
           ("Driver returned a buffer with no payload, this most likely "