From 3214db98ea1c71f6e6bb67adf077c695ac572692 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Reimar=20D=C3=B6ffinger?= Date: Thu, 17 Sep 2009 18:08:07 +0000 Subject: [PATCH] Improve dxa probe by checking the values for width and height are reasonable. Originally committed as revision 19897 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavformat/dxa.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/libavformat/dxa.c b/libavformat/dxa.c index 5b6cd67b59..a68d4c4efb 100644 --- a/libavformat/dxa.c +++ b/libavformat/dxa.c @@ -36,9 +36,15 @@ typedef struct{ static int dxa_probe(AVProbeData *p) { + int w, h; + if (p->buf_size < 15) + return 0; + w = AV_RB16(p->buf + 11); + h = AV_RB16(p->buf + 13); /* check file header */ if (p->buf[0] == 'D' && p->buf[1] == 'E' && - p->buf[2] == 'X' && p->buf[3] == 'A') + p->buf[2] == 'X' && p->buf[3] == 'A' && + w && w <= 2048 && h && h <= 2048) return AVPROBE_SCORE_MAX; else return 0;