diff options
author | James Almer <jamrial@gmail.com> | 2025-08-01 14:15:47 -0300 |
---|---|---|
committer | James Almer <jamrial@gmail.com> | 2025-08-01 19:35:43 +0000 |
commit | 2b522f537f565d6b4c23e12bd22c2102a32b1649 (patch) | |
tree | 501872c7a84d3cd157f1e121ed6379bea6c79123 | |
parent | c6b3aae0ee5d05234920e5679a43f8351e2ed4b3 (diff) | |
download | ffmpeg-2b522f537f565d6b4c23e12bd22c2102a32b1649.tar.gz |
avformat/mov: add extra sanity checks before setting the primary extradata
Signed-off-by: James Almer <jamrial@gmail.com>
-rw-r--r-- | libavformat/mov.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libavformat/mov.c b/libavformat/mov.c index 7f88ec8220..d6bc377ace 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -10667,7 +10667,8 @@ static int mov_read_header(AVFormatContext *s) fix_timescale(mov, sc); /* Set the primary extradata based on the first Sample. */ - if (sc->stsc_count && sc->extradata_size && !sc->iamf) { + if (sc->stsc_count && sc->extradata_size && !sc->iamf && + sc->stsc_data[0].id > 0 && sc->stsc_data[0].id <= sc->stsd_count) { sc->last_stsd_index = sc->stsc_data[0].id - 1; av_freep(&st->codecpar->extradata); st->codecpar->extradata_size = sc->extradata_size[sc->last_stsd_index]; |