---
libavformat/rtspdec.c | 14 +++++++++-----
1 file changed, 9 insertions(+), 5 deletions(-)
diff --git a/libavformat/rtspdec.c b/libavformat/rtspdec.c
index 5442b7d..e7a1c4b 100644
--- a/libavformat/rtspdec.c
+++ b/libavformat/rtspdec.c
@@ -609,10 +609,11 @@ int ff_rtsp_setup_input_streams(AVFormatContext
*s, RTSPMessageHeader *reply)
static int rtsp_listen(AVFormatContext *s)
{
RTSPState *rt = s->priv_data;
- char host[128], path[512], auth[128];
+ char proto[128], host[128], path[512], auth[128];
char uri[500];
int port;
char tcpname[500];
+ const char *lower_proto = "tcp";
unsigned char rbuf[4096];
unsigned char method[10];
int rbuflen = 0;
@@ -620,18 +621,21 @@ static int rtsp_listen(AVFormatContext *s)
enum RTSPMethod methodcode;
/* extract hostname and port */
- av_url_split(NULL, 0, auth, sizeof(auth), host, sizeof(host), &port,
- path, sizeof(path), s->filename);
+ av_url_split(proto, sizeof(proto), auth, sizeof(auth), host,
sizeof(host),
+ &port, path, sizeof(path), s->filename);
/* ff_url_join. No authorization by now (NULL) */
- ff_url_join(rt->control_uri, sizeof(rt->control_uri), "rtsp",
NULL, host,
+ ff_url_join(rt->control_uri, sizeof(rt->control_uri), proto,
NULL, host,
port, "%s", path);
if (port < 0)
port = RTSP_DEFAULT_PORT;