mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2025-12-11 17:30:00 +01:00
avformat/mov: reject negative ELST durations
Fixes: multiple integer overflows
Fixes: 401016767/clusterfuzz-testcase-minimized-ffmpeg_dem_MOV_fuzzer-6242067591790592
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 9fc2702f6f)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
@@ -5841,6 +5841,11 @@ static int mov_read_elst(MOVContext *c, AVIOContext *pb, MOVAtom atom)
|
|||||||
c->fc->nb_streams-1, i, e->time);
|
c->fc->nb_streams-1, i, e->time);
|
||||||
return AVERROR_INVALIDDATA;
|
return AVERROR_INVALIDDATA;
|
||||||
}
|
}
|
||||||
|
if (e->duration < 0) {
|
||||||
|
av_log(c->fc, AV_LOG_ERROR, "Track %d, edit %d: Invalid edit list duration=%"PRId64"\n",
|
||||||
|
c->fc->nb_streams-1, i, e->duration);
|
||||||
|
return AVERROR_INVALIDDATA;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
sc->elst_count = i;
|
sc->elst_count = i;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user