v4l2videodec: Ensure processing thread has stopped when draining

This commit is contained in:
Nicolas Dufresne 2014-03-11 14:23:32 -04:00
parent 6f48c74f2a
commit 27a617d75f

View file

@ -305,7 +305,12 @@ gst_v4l2_video_dec_finish (GstVideoDecoder * decoder)
}
GST_VIDEO_DECODER_STREAM_LOCK (decoder);
g_assert (g_atomic_int_get (&self->processing) == FALSE);
/* Ensure the processing thread has stopped */
if (self->processing) {
gst_v4l2_object_unlock (self->v4l2capture);
gst_pad_stop_task (decoder->srcpad);
g_assert (g_atomic_int_get (&self->processing) == FALSE);
}
if (ret == GST_FLOW_FLUSHING)
ret = self->output_flow;