Module: libav Branch: release/0.8 Commit: d3986f4f1baf8397c1f12154387c2c1950125d72
Author: Martin Storsjö <[email protected]> Committer: Luca Barbato <[email protected]> Date: Sun Sep 29 01:04:05 2013 +0300 xxan: Disallow odd width Decoded data is always written in pairs within this decoder. This fixes writes out of bounds. Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: [email protected] Signed-off-by: Martin Storsjö <[email protected]> (cherry picked from commit aa0dd52434768da64f1f3d8ae92bcf980c1adffc) Signed-off-by: Luca Barbato <[email protected]> --- libavcodec/xxan.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/libavcodec/xxan.c b/libavcodec/xxan.c index 59e1229..e9c6169 100644 --- a/libavcodec/xxan.c +++ b/libavcodec/xxan.c @@ -46,6 +46,11 @@ static av_cold int xan_decode_init(AVCodecContext *avctx) avctx->pix_fmt = PIX_FMT_YUV420P; + if (avctx->width & 1) { + av_log(avctx, AV_LOG_ERROR, "Invalid frame width: %d.\n", avctx->width); + return AVERROR(EINVAL); + } + s->buffer_size = avctx->width * avctx->height; s->y_buffer = av_malloc(s->buffer_size); if (!s->y_buffer) _______________________________________________ libav-commits mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-commits
