[FFmpeg-cvslog] rl2: Avoid a division by zero

Martin Storsjö git at videolan.org
Thu Jan 16 22:08:51 CET 2014


ffmpeg | branch: release/0.10 | Martin Storsjö <martin at martin.st> | Thu Sep 19 16:57:47 2013 +0300| [c211ba9b59e8a7c730dfacc536e59f036e77950f] | committer: Luca Barbato

rl2: Avoid a division by zero

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable at libav.org
Signed-off-by: Martin Storsjö <martin at martin.st>
(cherry picked from commit 3ca14aa5964ea5d11f7a15f9fff17924d6096d44)
Signed-off-by: Luca Barbato <lu_zero at gentoo.org>
(cherry picked from commit ce1dacb435460dda1f9d453eaaeac44bd502aca4)

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=c211ba9b59e8a7c730dfacc536e59f036e77950f
---

 libavformat/rl2.c |    4 ++++
 1 file changed, 4 insertions(+)

diff --git a/libavformat/rl2.c b/libavformat/rl2.c
index b2be7c0..b138d7b 100644
--- a/libavformat/rl2.c
+++ b/libavformat/rl2.c
@@ -109,6 +109,10 @@ static av_cold int rl2_read_header(AVFormatContext *s,
     rate = avio_rl16(pb);
     channels = avio_rl16(pb);
     def_sound_size = avio_rl16(pb);
+    if (!channels || channels > 42) {
+        av_log(s, AV_LOG_ERROR, "Invalid number of channels: %d\n", channels);
+        return AVERROR_INVALIDDATA;
+    }
 
     /** setup video stream */
     st = avformat_new_stream(s, NULL);



More information about the ffmpeg-cvslog mailing list