summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--gst/rtsp/gstrtspsrc.c11
2 files changed, 11 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index 467c52f0..74bdd33a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2006-03-21 Wim Taymans <wim@fluendo.com>
+
+ * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_open):
+ the OPTIONS request result is optional so don't
+ fail on it.
+
2006-03-21 Edward Hervey <edward@fluendo.com>
* gst/apetag/gsttagdemux.c: (gst_tag_demux_reset):
diff --git a/gst/rtsp/gstrtspsrc.c b/gst/rtsp/gstrtspsrc.c
index 1bf57efc..f0481968 100644
--- a/gst/rtsp/gstrtspsrc.c
+++ b/gst/rtsp/gstrtspsrc.c
@@ -873,6 +873,10 @@ gst_rtspsrc_open (GstRTSPSrc * src)
/* Then maybe Public Header... */
rtsp_message_get_header (&response, RTSP_HDR_PUBLIC, &respoptions);
if (!respoptions) {
+ /* this field is not required, assume the server supports
+ * DESCRIBE and SETUP*/
+ GST_DEBUG_OBJECT (src, "could not get OPTIONS");
+ src->options = RTSP_DESCRIBE | RTSP_SETUP;
goto no_options;
}
}
@@ -897,6 +901,7 @@ gst_rtspsrc_open (GstRTSPSrc * src)
}
g_strfreev (options);
+ no_options:
/* we need describe and setup */
if (!(src->options & RTSP_DESCRIBE))
goto no_describe;
@@ -1085,12 +1090,6 @@ send_error:
("Could not send message."), (NULL));
return FALSE;
}
-no_options:
- {
- GST_ELEMENT_ERROR (src, RESOURCE, WRITE,
- ("Invalid OPTIONS response."), (NULL));
- return FALSE;
- }
no_describe:
{
GST_ELEMENT_ERROR (src, RESOURCE, WRITE,