aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLaurent Aimar <fenrir@videolan.org>2011-09-29 01:04:51 +0200
committerMichael Niedermayer <michaelni@gmx.at>2011-10-01 20:51:12 +0200
commit14617fa7b8e688f5688d3679c906c8cb75ff42ed (patch)
tree2b914c741e010be4df80b3c9e3731e3e1a24da65
parent485b4317bba908f58ffa62181000c6180c31f698 (diff)
downloadffmpeg-14617fa7b8e688f5688d3679c906c8cb75ff42ed.tar.gz
Prevent NULL dereference when the palette is missing in the xan decoder.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> (cherry picked from commit 56ee5a9ad1b385129c40ba4773f99bc5943ae8af)
-rw-r--r--libavcodec/xan.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/libavcodec/xan.c b/libavcodec/xan.c
index 52f3a3f64a..b90353967d 100644
--- a/libavcodec/xan.c
+++ b/libavcodec/xan.c
@@ -552,6 +552,9 @@ static int xan_decode_frame(AVCodecContext *avctx,
}
buf_size = buf_end - buf;
}
+ if (s->palettes_count <= 0)
+ return AVERROR_INVALIDDATA;
+
if ((ret = avctx->get_buffer(avctx, &s->current_frame))) {
av_log(s->avctx, AV_LOG_ERROR, "get_buffer() failed\n");
return ret;