mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-29 11:40:38 +00:00
rtsp-media: Fix missing lock in gst_rtsp_media_seekable()
https://bugzilla.gnome.org/show_bug.cgi?id=790674
This commit is contained in:
parent
c390202faa
commit
0015791f8f
1 changed files with 13 additions and 4 deletions
|
@ -2581,9 +2581,9 @@ default_handle_message (GstRTSPMedia * media, GstMessage * message)
|
||||||
break;
|
break;
|
||||||
case GST_MESSAGE_ASYNC_DONE:
|
case GST_MESSAGE_ASYNC_DONE:
|
||||||
if (priv->complete) {
|
if (priv->complete) {
|
||||||
/* receive the final ASYNC_DONE, that is posted by the media pipeline
|
/* receive the final ASYNC_DONE, that is posted by the media pipeline
|
||||||
* after all the transport parts have been successfully added to
|
* after all the transport parts have been successfully added to
|
||||||
* the media streams. */
|
* the media streams. */
|
||||||
GST_DEBUG_OBJECT (media, "got async-done");
|
GST_DEBUG_OBJECT (media, "got async-done");
|
||||||
if (priv->status == GST_RTSP_MEDIA_STATUS_PREPARING)
|
if (priv->status == GST_RTSP_MEDIA_STATUS_PREPARING)
|
||||||
gst_rtsp_media_set_status (media, GST_RTSP_MEDIA_STATUS_PREPARED);
|
gst_rtsp_media_set_status (media, GST_RTSP_MEDIA_STATUS_PREPARED);
|
||||||
|
@ -4043,11 +4043,20 @@ gst_rtsp_media_get_transport_mode (GstRTSPMedia * media)
|
||||||
GstClockTimeDiff
|
GstClockTimeDiff
|
||||||
gst_rtsp_media_seekable (GstRTSPMedia * media)
|
gst_rtsp_media_seekable (GstRTSPMedia * media)
|
||||||
{
|
{
|
||||||
|
GstRTSPMediaPrivate *priv;
|
||||||
|
GstClockTimeDiff res;
|
||||||
|
|
||||||
g_return_val_if_fail (GST_IS_RTSP_MEDIA (media), FALSE);
|
g_return_val_if_fail (GST_IS_RTSP_MEDIA (media), FALSE);
|
||||||
|
|
||||||
|
priv = media->priv;
|
||||||
|
|
||||||
/* Currently we are not able to seek on live streams,
|
/* Currently we are not able to seek on live streams,
|
||||||
* and no stream is seekable only to the beginning */
|
* and no stream is seekable only to the beginning */
|
||||||
return media->priv->seekable;
|
g_mutex_lock (&priv->lock);
|
||||||
|
res = priv->seekable;
|
||||||
|
g_mutex_unlock (&priv->lock);
|
||||||
|
|
||||||
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in a new issue