From ca3b91b2d09330085b690a599fe0411aca95fe1e Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Thu, 10 Sep 2009 14:04:53 +0200 Subject: [PATCH] rtsp: don't return EPARSE Don't blindly return EPARSE when http mode is disabled. Restore old http mode after temporarily setting it to TRUE. --- gst-libs/gst/rtsp/gstrtspconnection.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gst-libs/gst/rtsp/gstrtspconnection.c b/gst-libs/gst/rtsp/gstrtspconnection.c index 6b27753..8728a00 100644 --- a/gst-libs/gst/rtsp/gstrtspconnection.c +++ b/gst-libs/gst/rtsp/gstrtspconnection.c @@ -637,6 +637,7 @@ setup_tunneling (GstRTSPConnection * conn, GTimeVal * timeout) gchar *hostparam; GstRTSPMessage *msg; GstRTSPMessage response; + gboolean old_http; memset (&response, 0, sizeof (response)); gst_rtsp_message_init (&response); @@ -692,10 +693,11 @@ setup_tunneling (GstRTSPConnection * conn, GTimeVal * timeout) /* we need to temporarily set manual_http to TRUE since * gst_rtsp_connection_receive() will treat the HTTP response as a parsing * failure otherwise */ + old_http = conn->manual_http; conn->manual_http = TRUE; GST_RTSP_CHECK (gst_rtsp_connection_receive (conn, &response, timeout), read_failed); - conn->manual_http = FALSE; + conn->manual_http = old_http; if (response.type != GST_RTSP_MESSAGE_HTTP_RESPONSE || response.type_data.response.code != GST_RTSP_STS_OK) @@ -3066,7 +3068,6 @@ gst_rtsp_source_dispatch (GSource * source, GSourceFunc callback G_GNUC_UNUSED, watch->message.type_data.response.version = GST_RTSP_VERSION_INVALID; } - res = GST_RTSP_EPARSE; } if (G_LIKELY (res == GST_RTSP_OK)) { -- 2.7.4