diff --git a/ChangeLog b/ChangeLog index 6c4b021302..481020e6e2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2005-08-17 Wim Taymans + + * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_open), (gst_rtspsrc_play): + Support absolute control urls too. + 2005-08-16 Ronald S. Bultje * gst/avi/gstavidemux.c: (gst_avi_demux_parse_stream), diff --git a/gst/rtsp/gstrtspsrc.c b/gst/rtsp/gstrtspsrc.c index fea449fe8c..949775176f 100644 --- a/gst/rtsp/gstrtspsrc.c +++ b/gst/rtsp/gstrtspsrc.c @@ -604,8 +604,13 @@ gst_rtspsrc_open (GstRTSPSrc * src) continue; } - /* FIXME, check absolute/relative URL */ - setup_url = g_strdup_printf ("%s/%s", src->location, control_url); + /* check absolute/relative URL */ + /* FIXME, what if the control_url starts with a '/' or a non rtsp: protocol? */ + if (g_str_has_prefix (control_url, "rtsp://")) { + setup_url = g_strdup (control_url); + } else { + setup_url = g_strdup_printf ("%s/%s", src->location, control_url); + } GST_DEBUG ("setup %s", setup_url); /* create SETUP request */