summaryrefslogtreecommitdiff
path: root/libavcodec/ffv1dec.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2015-11-14 13:21:58 +0100
committerMichael Niedermayer <michael@niedermayer.cc>2015-11-14 13:23:14 +0100
commite04126072e984f8db5db9da9303c89ae01f7d6bb (patch)
treea3050722ccd45d7487994dd2447d0ea786edbeea /libavcodec/ffv1dec.c
parentccba8aaff2ef5649495ae48bc5c90bd8ff32e6f3 (diff)
avcodec/ffv1dec: Clear quant_table_count if its invalid
Fixes deallocation of corrupted pointer Fixes: 343dfbe142a38b521ed069dc4ea7c03b/signal_sigsegv_421427_4074_ffb11959610278cd40dbc153464aa254.avi No releases affected Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavcodec/ffv1dec.c')
-rw-r--r--libavcodec/ffv1dec.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/libavcodec/ffv1dec.c b/libavcodec/ffv1dec.c
index 0d10114ae9..a14329a512 100644
--- a/libavcodec/ffv1dec.c
+++ b/libavcodec/ffv1dec.c
@@ -571,6 +571,7 @@ static int read_extra_header(FFV1Context *f)
f->quant_table_count = get_symbol(c, state, 0);
if (f->quant_table_count > (unsigned)MAX_QUANT_TABLES || !f->quant_table_count) {
av_log(f->avctx, AV_LOG_ERROR, "quant table count %d is invalid\n", f->quant_table_count);
+ f->quant_table_count = 0;
return AVERROR_INVALIDDATA;
}