diff options
author | Michael Niedermayer <michael@niedermayer.cc> | 2015-07-18 19:02:26 +0200 |
---|---|---|
committer | Michael Niedermayer <michael@niedermayer.cc> | 2015-07-20 04:43:41 +0200 |
commit | e3a521d817cb7d36acc6e1e7cda8d6a70e967be6 (patch) | |
tree | c75e7e0d69f47bd3d719ca9a9c95247068b901f5 /libavcodec | |
parent | 0de6cf5fdd9e1d89f5259eb0cc0795e424cfa6af (diff) | |
download | ffmpeg-e3a521d817cb7d36acc6e1e7cda8d6a70e967be6.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>
(cherry picked from commit a84f0e8d8f293df3c535f9b893730a835bed6520)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavcodec')
-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 5a458e8ad1..73e9d18275 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); |