diff options
author | Michael Niedermayer <michael@niedermayer.cc> | 2020-11-18 00:48:26 +0100 |
---|---|---|
committer | Michael Niedermayer <michael@niedermayer.cc> | 2020-12-24 15:25:00 +0100 |
commit | 684aec6a6872c9e3bb0afee1979f1cd3edd1f8ce (patch) | |
tree | a851f0b21c04efcb420b4f34617c8fc69911600b | |
parent | 0d4e8e4c97bc8247d619f09b4c64e9dfd5eae024 (diff) | |
download | ffmpeg-684aec6a6872c9e3bb0afee1979f1cd3edd1f8ce.tar.gz |
avformat/cafdec: clip sample rate
Fixes: 1.21126e+111 is outside the range of representable values of type 'int'
Fixes: 27398/clusterfuzz-testcase-minimized-ffmpeg_dem_CAF_fuzzer-5412960339755008
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r-- | libavformat/cafdec.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libavformat/cafdec.c b/libavformat/cafdec.c index c188aad20f..b7a9711cc5 100644 --- a/libavformat/cafdec.c +++ b/libavformat/cafdec.c @@ -70,7 +70,7 @@ static int read_desc_chunk(AVFormatContext *s) /* parse format description */ st->codecpar->codec_type = AVMEDIA_TYPE_AUDIO; - st->codecpar->sample_rate = av_int2double(avio_rb64(pb)); + st->codecpar->sample_rate = av_clipd(av_int2double(avio_rb64(pb)), 0, INT_MAX); st->codecpar->codec_tag = avio_rl32(pb); flags = avio_rb32(pb); caf->bytes_per_packet = avio_rb32(pb); |