summaryrefslogtreecommitdiff
path: root/libavformat/dxa.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavformat/dxa.c')
-rw-r--r--libavformat/dxa.c8
1 files changed, 7 insertions, 1 deletions
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;