[FFmpeg-cvslog] avformat/mov: Check that is_still_picture_avif has no trak based streams
Michael Niedermayer
git at videolan.org
Sat Nov 4 01:36:56 EET 2023
ffmpeg | branch: release/5.1 | Michael Niedermayer <michael at niedermayer.cc> | Sun Oct 15 01:52:20 2023 +0200| [1435f5028342de869c15c4c0630d44e4439c0479] | committer: Michael Niedermayer
avformat/mov: Check that is_still_picture_avif has no trak based streams
Fixes: Assertion failure in mov_read_iloc( in mov_read_iloc())
Fixes: 62866/clusterfuzz-testcase-minimized-ffmpeg_dem_MOV_fuzzer-5282997370486784
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
(cherry picked from commit 98c2711b58ce65eae02cb2ece3a664e1119fd8fe)
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=1435f5028342de869c15c4c0630d44e4439c0479
---
libavformat/mov.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/libavformat/mov.c b/libavformat/mov.c
index 0d2ca6b9f5..77108738a4 100644
--- a/libavformat/mov.c
+++ b/libavformat/mov.c
@@ -4440,6 +4440,10 @@ static int mov_read_trak(MOVContext *c, AVIOContext *pb, MOVAtom atom)
MOVStreamContext *sc;
int ret;
+ if (c->is_still_picture_avif) {
+ return AVERROR_INVALIDDATA;
+ }
+
st = avformat_new_stream(c->fc, NULL);
if (!st) return AVERROR(ENOMEM);
st->id = -1;
More information about the ffmpeg-cvslog
mailing list