Skip to content
Snippets Groups Projects
Commit 09ab5f2c authored by Kseniia Vasilchuk's avatar Kseniia Vasilchuk Committed by Sebastian Dröge
Browse files

media: Fix race condition around finish_unprepare() if called multiple time

https://bugzilla.gnome.org/show_bug.cgi?id=755329
parent b3955ed9
No related branches found
No related tags found
No related merge requests found
......@@ -3050,6 +3050,10 @@ finish_unprepare (GstRTSPMedia * media)
g_rec_mutex_unlock (&priv->state_lock);
set_state (media, GST_STATE_NULL);
g_rec_mutex_lock (&priv->state_lock);
if (priv->status != GST_RTSP_MEDIA_STATUS_UNPREPARING)
return;
remove_fakesink (priv);
for (i = 0; i < priv->streams->len; i++) {
......@@ -3168,6 +3172,7 @@ gst_rtsp_media_unprepare (GstRTSPMedia * media)
if (klass->unprepare)
success = klass->unprepare (media);
} else {
gst_rtsp_media_set_status (media, GST_RTSP_MEDIA_STATUS_UNPREPARING);
finish_unprepare (media);
}
g_rec_mutex_unlock (&priv->state_lock);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment