aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2021-04-19 13:37:26 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2021-09-09 13:54:52 +0200
commited99d350bca70dd758770e616050139e9c764bb1 (patch)
treebc0cb148a8f2ed9cbd59965180eb65821f4367fb
parente7dc9e1d25d3b9e93f685cfb0b7d30bf050f895d (diff)
downloadffmpeg-ed99d350bca70dd758770e616050139e9c764bb1.tar.gz
avformat/mov: Ignore duplicate CoLL
Fixes: memleak Fixes: 32146/clusterfuzz-testcase-minimized-ffmpeg_dem_MOV_fuzzer-5377612845285376 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> (cherry picked from commit 9548dc74d8db2bc002e1195dbd076f621f5c3ea1) Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r--libavformat/mov.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/libavformat/mov.c b/libavformat/mov.c
index 7dc9108a5e..0f991cbb42 100644
--- a/libavformat/mov.c
+++ b/libavformat/mov.c
@@ -5422,6 +5422,11 @@ static int mov_read_coll(MOVContext *c, AVIOContext *pb, MOVAtom atom)
}
avio_skip(pb, 3); /* flags */
+ if (sc->coll){
+ av_log(c->fc, AV_LOG_WARNING, "Ignoring duplicate COLL\n");
+ return 0;
+ }
+
sc->coll = av_content_light_metadata_alloc(&sc->coll_size);
if (!sc->coll)
return AVERROR(ENOMEM);