mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-24 01:00:37 +00:00
rtspsrc: release state lock before stopping task
We need to release the state lock before trying to wait for the task to end because the task might also take the lock. Fixes #577671
This commit is contained in:
parent
6cfa856381
commit
de0a2575fc
1 changed files with 5 additions and 0 deletions
|
@ -4674,6 +4674,9 @@ gst_rtspsrc_close (GstRTSPSrc * src)
|
||||||
|
|
||||||
/* stop task if any */
|
/* stop task if any */
|
||||||
if (src->task) {
|
if (src->task) {
|
||||||
|
/* release lock before trying to get the streamlock */
|
||||||
|
GST_RTSP_STATE_UNLOCK (src);
|
||||||
|
|
||||||
gst_task_stop (src->task);
|
gst_task_stop (src->task);
|
||||||
|
|
||||||
/* make sure it is not running */
|
/* make sure it is not running */
|
||||||
|
@ -4686,6 +4689,8 @@ gst_rtspsrc_close (GstRTSPSrc * src)
|
||||||
/* and free the task */
|
/* and free the task */
|
||||||
gst_object_unref (GST_OBJECT (src->task));
|
gst_object_unref (GST_OBJECT (src->task));
|
||||||
src->task = NULL;
|
src->task = NULL;
|
||||||
|
|
||||||
|
GST_RTSP_STATE_LOCK (src);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!src->connection)
|
if (!src->connection)
|
||||||
|
|
Loading…
Reference in a new issue