1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-23 12:43:46 +02:00

eatgv: check vector_bits

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Michael Niedermayer 2012-04-15 15:29:50 +02:00
parent 34123ab979
commit b962932cba

View File

@ -157,6 +157,11 @@ static int tgv_decode_inter(TgvContext * s, const uint8_t *buf, const uint8_t *b
vector_bits = AV_RL16(&buf[6]); vector_bits = AV_RL16(&buf[6]);
buf += 12; buf += 12;
if (vector_bits > MIN_CACHE_BITS || !vector_bits) {
av_log(s->avctx, AV_LOG_ERROR, "vector_bits %d invalid\n", vector_bits);
return AVERROR_INVALIDDATA;
}
/* allocate codebook buffers as necessary */ /* allocate codebook buffers as necessary */
if (num_mvs > s->num_mvs) { if (num_mvs > s->num_mvs) {
s->mv_codebook = av_realloc(s->mv_codebook, num_mvs*2*sizeof(int)); s->mv_codebook = av_realloc(s->mv_codebook, num_mvs*2*sizeof(int));