[FFmpeg-cvslog] avformat/mp3dec: Check header_filesize
Michael Niedermayer
git at videolan.org
Wed Jul 24 17:50:49 EEST 2024
ffmpeg | branch: release/4.3 | Michael Niedermayer <michael at niedermayer.cc> | Thu Jul 11 20:20:53 2024 +0200| [1c1f537e068c8afbdbc044d7525a8ffa0c2e0767] | committer: Michael Niedermayer
avformat/mp3dec: Check header_filesize
Fixes: CID1608714 Division or modulo by float zero
Sponsored-by: Sovereign Tech Fund
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
(cherry picked from commit cea4dbc903eaf8cb7a4ea53b281deff495ff8fa0)
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=1c1f537e068c8afbdbc044d7525a8ffa0c2e0767
---
libavformat/mp3dec.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libavformat/mp3dec.c b/libavformat/mp3dec.c
index c0f75b6e9c..d3a393de97 100644
--- a/libavformat/mp3dec.c
+++ b/libavformat/mp3dec.c
@@ -585,7 +585,7 @@ static int mp3_seek(AVFormatContext *s, int stream_index, int64_t timestamp,
if (best_pos < 0)
return best_pos;
- if (mp3->is_cbr && ie == &ie1 && mp3->frames) {
+ if (mp3->is_cbr && ie == &ie1 && mp3->frames && mp3->header_filesize > 0) {
int frame_duration = av_rescale(st->duration, 1, mp3->frames);
ie1.timestamp = frame_duration * av_rescale(best_pos - s->internal->data_offset, mp3->frames, mp3->header_filesize);
}
More information about the ffmpeg-cvslog
mailing list