From 53859ac34be48bc3b8210e4598e885ea04e3efa8 Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Fri, 29 Nov 2013 10:53:08 +0100 Subject: [PATCH] media: also handle prepare and range in suspended state When we are suspended, we are already prepared. We can get the range in the suspended state. --- gst/rtsp-server/rtsp-client.c | 6 ++++-- gst/rtsp-server/rtsp-media.c | 6 ++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/gst/rtsp-server/rtsp-client.c b/gst/rtsp-server/rtsp-client.c index a9ccbc2..3bbd64e 100644 --- a/gst/rtsp-server/rtsp-client.c +++ b/gst/rtsp-server/rtsp-client.c @@ -1937,10 +1937,12 @@ handle_request (GstRTSPClient * client, GstRTSPMessage * request) gst_rtsp_message_dump (request); } - GST_INFO ("client %p: received a request", client); - gst_rtsp_message_parse_request (request, &method, &uristr, &version); + GST_INFO ("client %p: received a request %s %s %s", client, + gst_rtsp_method_as_text (method), uristr, + gst_rtsp_version_as_text (version)); + /* we can only handle 1.0 requests */ if (version != GST_RTSP_VERSION_1_0) goto not_supported; diff --git a/gst/rtsp-server/rtsp-media.c b/gst/rtsp-server/rtsp-media.c index 2c72d97..eea4035 100644 --- a/gst/rtsp-server/rtsp-media.c +++ b/gst/rtsp-server/rtsp-media.c @@ -1325,7 +1325,8 @@ gst_rtsp_media_get_range_string (GstRTSPMedia * media, gboolean play, priv = media->priv; g_rec_mutex_lock (&priv->state_lock); - if (priv->status != GST_RTSP_MEDIA_STATUS_PREPARED) + if (priv->status != GST_RTSP_MEDIA_STATUS_PREPARED && + priv->status != GST_RTSP_MEDIA_STATUS_SUSPENDED) goto not_prepared; g_mutex_lock (&priv->lock); @@ -1993,7 +1994,8 @@ gst_rtsp_media_prepare (GstRTSPMedia * media, GstRTSPThread * thread) g_rec_mutex_lock (&priv->state_lock); priv->prepare_count++; - if (priv->status == GST_RTSP_MEDIA_STATUS_PREPARED) + if (priv->status == GST_RTSP_MEDIA_STATUS_PREPARED || + priv->status == GST_RTSP_MEDIA_STATUS_SUSPENDED) goto was_prepared; if (priv->status == GST_RTSP_MEDIA_STATUS_PREPARING) -- 2.7.4