aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2012-05-28 17:17:49 +0200
committerMichael Niedermayer <michaelni@gmx.at>2012-06-09 21:06:41 +0200
commit25594f0018e00a092615ec67629e287c7c6d181f (patch)
treecb9c82ae7d9684d68f3541182a36862c8c535514
parenta85c3fff37a9f410aded0cbcdae08e724adbea21 (diff)
downloadffmpeg-25594f0018e00a092615ec67629e287c7c6d181f.tar.gz
motionpixels: check extradata size
Fixes null ptr derefernce Fixes Ticket1363 Signed-off-by: Michael Niedermayer <michaelni@gmx.at> (cherry picked from commit 50122084a6b3be06781a2b3d8ec036f2d67c32e3) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r--libavcodec/motionpixels.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/libavcodec/motionpixels.c b/libavcodec/motionpixels.c
index aa398c9592..1806e4703d 100644
--- a/libavcodec/motionpixels.c
+++ b/libavcodec/motionpixels.c
@@ -55,6 +55,11 @@ static av_cold int mp_decode_init(AVCodecContext *avctx)
int w4 = (avctx->width + 3) & ~3;
int h4 = (avctx->height + 3) & ~3;
+ if(avctx->extradata_size < 2){
+ av_log(avctx, AV_LOG_ERROR, "extradata too small\n");
+ return AVERROR_INVALIDDATA;
+ }
+
motionpixels_tableinit();
mp->avctx = avctx;
dsputil_init(&mp->dsp, avctx);