diff options
author | Michael Niedermayer <michael@niedermayer.cc> | 2024-06-07 21:57:40 +0200 |
---|---|---|
committer | Michael Niedermayer <michael@niedermayer.cc> | 2024-07-12 16:40:42 +0200 |
commit | 665be4fa2f47910bf85a6f17b6cac9dabc6591f0 (patch) | |
tree | 5b775cf9520bee55450bdb97ef4983b07c4e8e17 | |
parent | 71f802cdc9c290ab55f76cabbf872418a984b2ad (diff) | |
download | ffmpeg-665be4fa2f47910bf85a6f17b6cac9dabc6591f0.tar.gz |
avformat/rmdec: use 64bit for audio_framesize checks
It is not entirely clear what would prevent such overflow so even if it is
not possible, it is better to use 64bit
Fixes: CID1491898 Unintentional integer overflow
Sponsored-by: Sovereign Tech Fund
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r-- | libavformat/rmdec.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libavformat/rmdec.c b/libavformat/rmdec.c index 4ccb089596..25a8681cfd 100644 --- a/libavformat/rmdec.c +++ b/libavformat/rmdec.c @@ -268,9 +268,9 @@ static int rm_read_audio_stream_info(AVFormatContext *s, AVIOContext *pb, case DEINT_ID_INT4: if (ast->coded_framesize > ast->audio_framesize || sub_packet_h <= 1 || - ast->coded_framesize * (uint64_t)sub_packet_h > (2 + (sub_packet_h & 1)) * ast->audio_framesize) + ast->coded_framesize * (uint64_t)sub_packet_h > (2LL + (sub_packet_h & 1)) * ast->audio_framesize) return AVERROR_INVALIDDATA; - if (ast->coded_framesize * (uint64_t)sub_packet_h != 2*ast->audio_framesize) { + if (ast->coded_framesize * (uint64_t)sub_packet_h != 2LL*ast->audio_framesize) { avpriv_request_sample(s, "mismatching interleaver parameters"); return AVERROR_INVALIDDATA; } |