summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolas Dufresne <nicolas.dufresne@collabora.com>2020-10-15 12:05:45 -0400
committerTim-Philipp Müller <tim@centricular.com>2020-10-16 10:52:23 +0100
commita082311bf598adccd297bc3ffa83a734c04f3d42 (patch)
tree801ce7369b363e17420edb7a1bcd7aed98964bdf
parentf0ee607b102b0fbc0eb7ed942f528452f831f95c (diff)
downloadgstreamer-plugins-bad-a082311bf598adccd297bc3ffa83a734c04f3d42.tar.gz
v4l2codecs: decoder: Unmark previously pending request
requests are executed in order, so while dequeuing sink buffers for previous request, also mark these request as no longer pending. This will allow reusing the request later. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1701>
-rw-r--r--sys/v4l2codecs/gstv4l2decoder.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/v4l2codecs/gstv4l2decoder.c b/sys/v4l2codecs/gstv4l2decoder.c
index 8c2e93874..abe81f94a 100644
--- a/sys/v4l2codecs/gstv4l2decoder.c
+++ b/sys/v4l2codecs/gstv4l2decoder.c
@@ -914,6 +914,7 @@ gst_v4l2_request_set_done (GstV4l2Request * request)
while ((pending_req = gst_queue_array_pop_head (dec->pending_requests))) {
gst_v4l2_decoder_dequeue_sink (request->decoder);
g_clear_pointer (&pending_req->bitstream, gst_memory_unref);
+ pending_req->pending = FALSE;
if (pending_req == request)
break;