Message ID | 20190122191833.27072-1-fpi@gmx.ch |
---|---|
State | New |
Headers | show |
On Tue, Jan 22, 2019 at 07:18:33PM +0000, fpi@gmx.ch wrote: > From: Frederic Pillonel <fpi@gmx.ch> > > --- > libavformat/rtsp.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/libavformat/rtsp.c b/libavformat/rtsp.c > index ceb770a3a4..20f63e0e01 100644 > --- a/libavformat/rtsp.c > +++ b/libavformat/rtsp.c > @@ -548,9 +548,10 @@ static void sdp_parse_line(AVFormatContext *s, SDPParseState *s1, > NULL, NULL, 0, p); > if (proto[0] == '\0') { > /* relative control URL */ > - if (rtsp_st->control_url[strlen(rtsp_st->control_url)-1]!='/') > - av_strlcat(rtsp_st->control_url, "/", > - sizeof(rtsp_st->control_url)); > + if (rtsp_st->control_url[strlen(rtsp_st->control_url)-1]!='/' && > + (sizeof(p) > 0 && p[0]!='/')) what is sizeof(p) > 0 supposed to check for ? p is a pointer which cannot have a size of 0 also The commit message should start with a prefix specifying the area or file changed thx [...]
diff --git a/libavformat/rtsp.c b/libavformat/rtsp.c index ceb770a3a4..20f63e0e01 100644 --- a/libavformat/rtsp.c +++ b/libavformat/rtsp.c @@ -548,9 +548,10 @@ static void sdp_parse_line(AVFormatContext *s, SDPParseState *s1, NULL, NULL, 0, p); if (proto[0] == '\0') { /* relative control URL */ - if (rtsp_st->control_url[strlen(rtsp_st->control_url)-1]!='/') - av_strlcat(rtsp_st->control_url, "/", - sizeof(rtsp_st->control_url)); + if (rtsp_st->control_url[strlen(rtsp_st->control_url)-1]!='/' && + (sizeof(p) > 0 && p[0]!='/')) + av_strlcat(rtsp_st->control_url, "/", + sizeof(rtsp_st->control_url)); av_strlcat(rtsp_st->control_url, p, sizeof(rtsp_st->control_url)); } else
From: Frederic Pillonel <fpi@gmx.ch> --- libavformat/rtsp.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-)