ffmpeg | branch: master | Vittorio Giovara <vittorio.giov...@gmail.com> | Sun Jun 26 20:08:53 2016 -0400| [d8f3b0fb584677d4882e3a2d7c28f8b15c7319f5] | committer: Vittorio Giovara
targaenc: Move size check to initialization function In case of bogus input, fail early at codec initialization, rather than at the encode function. > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=d8f3b0fb584677d4882e3a2d7c28f8b15c7319f5 --- libavcodec/targaenc.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/libavcodec/targaenc.c b/libavcodec/targaenc.c index 204ecfe..f0cee38 100644 --- a/libavcodec/targaenc.c +++ b/libavcodec/targaenc.c @@ -89,10 +89,6 @@ static int targa_encode_frame(AVCodecContext *avctx, AVPacket *pkt, int bpp, picsize, datasize = -1, ret; uint8_t *out; - if(avctx->width > 0xffff || avctx->height > 0xffff) { - av_log(avctx, AV_LOG_ERROR, "image dimensions too large\n"); - return AVERROR(EINVAL); - } picsize = av_image_get_buffer_size(avctx->pix_fmt, avctx->width, avctx->height, 1); if ((ret = ff_alloc_packet(pkt, picsize + 45)) < 0) { @@ -167,6 +163,11 @@ FF_ENABLE_DEPRECATION_WARNINGS static av_cold int targa_encode_init(AVCodecContext *avctx) { + if (avctx->width > 0xffff || avctx->height > 0xffff) { + av_log(avctx, AV_LOG_ERROR, "image dimensions too large\n"); + return AVERROR(EINVAL); + } + #if FF_API_CODED_FRAME FF_DISABLE_DEPRECATION_WARNINGS avctx->coded_frame->key_frame = 1; _______________________________________________ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog