From 5b98ea1b7309fd43694b92e990439636630f408a Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Fri, 9 Dec 2011 23:46:16 +0100 Subject: [PATCH] vb: Add some checks on input buffer related values. Fixes crash with INTRO_FAIL.VB Signed-off-by: Michael Niedermayer --- libavcodec/vb.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/libavcodec/vb.c b/libavcodec/vb.c index d66c47b976..26967db7b2 100644 --- a/libavcodec/vb.c +++ b/libavcodec/vb.c @@ -221,10 +221,14 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *data_size, AVPac offset = i + j * avctx->width; rest -= 4; } + if(rest < 0){ + av_log(avctx, AV_LOG_ERROR, "not enough data\n"); + return -1; + } if(flags & VB_HAS_VIDEO){ size = bytestream_get_le32(&c->stream); - if(size > rest){ - av_log(avctx, AV_LOG_ERROR, "Frame size is too big\n"); + if(size > rest || size<4){ + av_log(avctx, AV_LOG_ERROR, "Frame size invalid\n"); return -1; } vb_decode_framedata(c, c->stream, size, offset);