[FFmpeg-cvslog] avformat/rtsp: Clear reply in every iteration in ff_rtsp_connect()
Michael Niedermayer
git at videolan.org
Fri May 10 22:02:21 EEST 2019
ffmpeg | branch: release/3.2 | Michael Niedermayer <michael at niedermayer.cc> | Mon Jan 28 00:53:22 2019 +0100| [e5ea21a58063e1628a2892ed76e5725ba0bfd0cd] | committer: Michael Niedermayer
avformat/rtsp: Clear reply in every iteration in ff_rtsp_connect()
Fixes: Infinite loop
Found-by: Michael Hanselmann <public at hansmi.ch>
Reviewed-by: Michael Hanselmann <public at hansmi.ch>
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
(cherry picked from commit 0b50f27635f684ec0526e9975c9979f35bbf486b)
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=e5ea21a58063e1628a2892ed76e5725ba0bfd0cd
---
libavformat/rtsp.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/libavformat/rtsp.c b/libavformat/rtsp.c
index c6292c5543..a3f1e40983 100644
--- a/libavformat/rtsp.c
+++ b/libavformat/rtsp.c
@@ -1659,7 +1659,7 @@ int ff_rtsp_connect(AVFormatContext *s)
char tcpname[1024], cmd[2048], auth[128];
const char *lower_rtsp_proto = "tcp";
int port, err, tcp_fd;
- RTSPMessageHeader reply1 = {0}, *reply = &reply1;
+ RTSPMessageHeader reply1, *reply = &reply1;
int lower_transport_mask = 0;
int default_port = RTSP_DEFAULT_PORT;
char real_challenge[64] = "";
@@ -1688,6 +1688,7 @@ int ff_rtsp_connect(AVFormatContext *s)
rt->lower_transport_mask &= (1 << RTSP_LOWER_TRANSPORT_NB) - 1;
redirect:
+ memset(&reply1, 0, sizeof(reply1));
/* extract hostname and port */
av_url_split(proto, sizeof(proto), auth, sizeof(auth),
host, sizeof(host), &port, path, sizeof(path), s->filename);
More information about the ffmpeg-cvslog
mailing list