diff --git a/libavcodec/xl.c b/libavcodec/xl.c index 6cdb91b4c7..c8b0e06a41 100644 --- a/libavcodec/xl.c +++ b/libavcodec/xl.c @@ -52,6 +52,11 @@ static int decode_frame(AVCodecContext *avctx, uint32_t val; int y0, y1, y2, y3 = 0, c0 = 0, c1 = 0; + if (avctx->width & 3) { + av_log(avctx, AV_LOG_ERROR, "width is not a multiple of 4\n"); + return AVERROR_INVALIDDATA; + } + if(p->data[0]) avctx->release_buffer(avctx, p);