aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2015-11-14 13:21:58 +0100
committerCarl Eugen Hoyos <cehoyos@ag.or.at>2015-12-06 14:15:31 +0100
commit2789b48b4ef5b6548eaffeb9b532b2d8f4729db5 (patch)
treebd8026c56e42c6bed6f574f3dcb2d6fc5e81ff4f
parent5628d6202217b651c6977944a956b094c3174bea (diff)
downloadffmpeg-2789b48b4ef5b6548eaffeb9b532b2d8f4729db5.tar.gz
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> (cherry picked from commit e04126072e984f8db5db9da9303c89ae01f7d6bb) Fixes ticket #5052.
-rw-r--r--libavcodec/ffv1dec.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/libavcodec/ffv1dec.c b/libavcodec/ffv1dec.c
index c64a43e77b..3ed96501f1 100644
--- a/libavcodec/ffv1dec.c
+++ b/libavcodec/ffv1dec.c
@@ -523,6 +523,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;
}