This check is outdated because the caller doesn't need to check that the multiplication overflows when using av_realloc_array() (the code in question used av_realloc() before that); furthermore, the check is also a remnant of the time in which our allocation functions didn't use size_t parameters.
Signed-off-by: Andreas Rheinhardt <andreas.rheinha...@gmail.com> --- It would btw make more sense for AVFormatContext.max_streams to be unsigned. libavformat/utils.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/libavformat/utils.c b/libavformat/utils.c index 524765aeb4..88f6f18f1f 100644 --- a/libavformat/utils.c +++ b/libavformat/utils.c @@ -4493,9 +4493,10 @@ AVStream *avformat_new_stream(AVFormatContext *s, const AVCodec *c) int i; AVStream **streams; - if (s->nb_streams >= FFMIN(s->max_streams, INT_MAX/sizeof(*streams))) { - if (s->max_streams < INT_MAX/sizeof(*streams)) - av_log(s, AV_LOG_ERROR, "Number of streams exceeds max_streams parameter (%d), see the documentation if you wish to increase it\n", s->max_streams); + if (s->nb_streams >= s->max_streams) { + av_log(s, AV_LOG_ERROR, "Number of streams exceeds max_streams parameter" + " (%d), see the documentation if you wish to increase it\n", + s->max_streams); return NULL; } streams = av_realloc_array(s->streams, s->nb_streams + 1, sizeof(*streams)); -- 2.27.0 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".