mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-18 12:15:19 +00:00
adaptivedemux2: Hold tracks lock accessing input_period
The input_period is protected by the TRACKS_LOCK, so make sure to hold that when accessing it. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3314>
This commit is contained in:
parent
93f80bb061
commit
b691aece65
1 changed files with 3 additions and 3 deletions
|
@ -2942,6 +2942,9 @@ gst_adaptive_demux_stop_tasks (GstAdaptiveDemux * demux, gboolean stop_updates)
|
||||||
gst_adaptive_demux_stop_manifest_update_task (demux);
|
gst_adaptive_demux_stop_manifest_update_task (demux);
|
||||||
|
|
||||||
TRACKS_LOCK (demux);
|
TRACKS_LOCK (demux);
|
||||||
|
if (demux->input_period)
|
||||||
|
gst_adaptive_demux_period_stop_tasks (demux->input_period);
|
||||||
|
|
||||||
demux->priv->flushing = TRUE;
|
demux->priv->flushing = TRUE;
|
||||||
g_cond_signal (&demux->priv->tracks_add);
|
g_cond_signal (&demux->priv->tracks_add);
|
||||||
gst_task_stop (demux->priv->output_task);
|
gst_task_stop (demux->priv->output_task);
|
||||||
|
@ -2949,9 +2952,6 @@ gst_adaptive_demux_stop_tasks (GstAdaptiveDemux * demux, gboolean stop_updates)
|
||||||
|
|
||||||
gst_task_join (demux->priv->output_task);
|
gst_task_join (demux->priv->output_task);
|
||||||
|
|
||||||
if (demux->input_period)
|
|
||||||
gst_adaptive_demux_period_stop_tasks (demux->input_period);
|
|
||||||
|
|
||||||
demux->priv->qos_earliest_time = GST_CLOCK_TIME_NONE;
|
demux->priv->qos_earliest_time = GST_CLOCK_TIME_NONE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue