From: Arttu Ylä-Outinen Date: Mon, 18 Jan 2016 19:54:34 +0000 (+0100) Subject: lavc: Make sure that the effective timebase would not overflow X-Git-Tag: android-x86-7.1-r1~252^2~1591 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=7486418683bd2477772e03aab573cf846c12fb0d;p=android-x86%2Fexternal-ffmpeg.git lavc: Make sure that the effective timebase would not overflow In the unlikely situation the user decides to set ticks_per_frame and timebase to a value large enough to overflow. Signed-off-by: Luca Barbato --- diff --git a/libavcodec/utils.c b/libavcodec/utils.c index 29ba85fd21..e06ee664b5 100644 --- a/libavcodec/utils.c +++ b/libavcodec/utils.c @@ -1049,6 +1049,16 @@ FF_ENABLE_DEPRECATION_WARNINGS if (!avctx->rc_initial_buffer_occupancy) avctx->rc_initial_buffer_occupancy = avctx->rc_buffer_size * 3 / 4; + + if (avctx->ticks_per_frame && + avctx->ticks_per_frame > INT_MAX / avctx->time_base.num) { + av_log(avctx, AV_LOG_ERROR, + "ticks_per_frame %d too large for the timebase %d/%d.", + avctx->ticks_per_frame, + avctx->time_base.num, + avctx->time_base.den); + goto free_and_end; + } } if (avctx->codec->init && !(avctx->active_thread_type & FF_THREAD_FRAME)) {