[FFmpeg-cvslog] avformat/mov: check avio_read() return in mov_read_dref()

Michael Niedermayer git at videolan.org
Fri Dec 27 23:44:16 CET 2013


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Fri Dec 27 23:35:46 2013 +0100| [4156df59f59626f60186a4effed80f60c9c4e8cc] | committer: Michael Niedermayer

avformat/mov: check avio_read() return in mov_read_dref()

Fixes: msan_uninit-mem_7f4960453a02_7264_mr_cork_jpeg.mov
Fixes use of uninitialized memory
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

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

 libavformat/mov.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/libavformat/mov.c b/libavformat/mov.c
index 940393d..be602ee 100644
--- a/libavformat/mov.c
+++ b/libavformat/mov.c
@@ -537,7 +537,8 @@ static int mov_read_dref(MOVContext *c, AVIOContext *pb, MOVAtom atom)
                     dref->dir = av_malloc(len+1);
                     if (!dref->dir)
                         return AVERROR(ENOMEM);
-                    avio_read(pb, dref->dir, len);
+                    if (avio_read(pb, dref->dir, len) != len)
+                        return AVERROR_INVALIDDATA;
                     dref->dir[len] = 0;
                     for (j = 0; j < len; j++)
                         if (dref->dir[j] == ':')



More information about the ffmpeg-cvslog mailing list