v4l2bufferpool: actually queue back the empty buffer flagged LAST
The buffer would fail at gst_v4l2_is_buffer_valid() before, since it has a reference on it, it is not writable. Fixes: 105d232fdec1 ("v4l2bufferpool: queue back the buffer flagged LAST but empty") Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7479>
This commit is contained in:
parent
dcfc66a1ac
commit
6f5bbd0276
@ -1296,10 +1296,8 @@ gst_v4l2_buffer_pool_dqbuf (GstV4l2BufferPool * pool, GstBuffer ** buffer,
|
|||||||
if (group->buffer.flags & V4L2_BUF_FLAG_LAST &&
|
if (group->buffer.flags & V4L2_BUF_FLAG_LAST &&
|
||||||
group->planes[0].bytesused == 0) {
|
group->planes[0].bytesused == 0) {
|
||||||
GST_DEBUG_OBJECT (pool, "Empty last buffer, signalling eos.");
|
GST_DEBUG_OBJECT (pool, "Empty last buffer, signalling eos.");
|
||||||
*buffer = outbuf;
|
gst_v4l2_buffer_pool_complete_release_buffer (bpool, outbuf, FALSE);
|
||||||
outbuf = NULL;
|
*buffer = NULL;
|
||||||
gst_buffer_ref (*buffer);
|
|
||||||
gst_v4l2_buffer_pool_complete_release_buffer (bpool, *buffer, FALSE);
|
|
||||||
goto eos;
|
goto eos;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user