diff options
author | Michael Niedermayer <michael@niedermayer.cc> | 2015-07-18 19:02:26 +0200 |
---|---|---|
committer | Michael Niedermayer <michael@niedermayer.cc> | 2015-07-18 19:03:23 +0200 |
commit | a84f0e8d8f293df3c535f9b893730a835bed6520 (patch) | |
tree | b658fd9025edd131a4d69360d6f53a077d862c6f | |
parent | 1c5b712c0a643a039d6f34269b4102de313a050a (diff) | |
download | ffmpeg-a84f0e8d8f293df3c535f9b893730a835bed6520.tar.gz |
avcodec/vp8: Fix null pointer dereference in ff_vp8_decode_free()
Fixes: signal_sigsegv_d5de23_967_vp80_00_comprehensive_010.ivf with memlimit 524288
Found-by: Samuel Groß, Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r-- | libavcodec/vp8.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/libavcodec/vp8.c b/libavcodec/vp8.c index becbb2c437..494400f41e 100644 --- a/libavcodec/vp8.c +++ b/libavcodec/vp8.c @@ -2689,6 +2689,9 @@ av_cold int ff_vp8_decode_free(AVCodecContext *avctx) VP8Context *s = avctx->priv_data; int i; + if (!s) + return 0; + vp8_decode_flush_impl(avctx, 1); for (i = 0; i < FF_ARRAY_ELEMS(s->frames); i++) av_frame_free(&s->frames[i].tf.f); |