aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2012-11-29 15:18:17 +0100
committerMichael Niedermayer <michaelni@gmx.at>2013-02-17 23:22:18 +0100
commit391e0fc6c90ced6656b74f50f3a487b6dc76ea63 (patch)
treef90bda16dbdba6f0e14ff7966a783b19c15b2490 /libavcodec
parentcaeca53a09fd5d23e7da2725fb2fba27b9429d72 (diff)
downloadffmpeg-391e0fc6c90ced6656b74f50f3a487b6dc76ea63.tar.gz
roqvideodec: check dimensions validity
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michaelni@gmx.at> (cherry picked from commit 3ae610451170cd5a28b33950006ff0bd23036845) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec')
-rw-r--r--libavcodec/roqvideodec.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/libavcodec/roqvideodec.c b/libavcodec/roqvideodec.c
index f0977f6491..4e34231aa4 100644
--- a/libavcodec/roqvideodec.c
+++ b/libavcodec/roqvideodec.c
@@ -157,6 +157,12 @@ static av_cold int roq_decode_init(AVCodecContext *avctx)
RoqContext *s = avctx->priv_data;
s->avctx = avctx;
+
+ if (avctx->width%16 || avctx->height%16) {
+ av_log_ask_for_sample(avctx, "dimensions not being a multiple of 16 are unsupported\n");
+ return AVERROR_PATCHWELCOME;
+ }
+
s->width = avctx->width;
s->height = avctx->height;
avcodec_get_frame_defaults(&s->frames[0]);