Mercurial > libavformat.hg
changeset 5216:7c0b8cd87f5a libavformat
Improve dxa probe by checking the values for width and height are reasonable.
author | reimar |
---|---|
date | Thu, 17 Sep 2009 18:08:07 +0000 |
parents | 6fc9f9d8aaa1 |
children | 0d44bd284a96 |
files | dxa.c |
diffstat | 1 files changed, 7 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/dxa.c Thu Sep 17 18:07:27 2009 +0000 +++ b/dxa.c Thu Sep 17 18:08:07 2009 +0000 @@ -36,9 +36,15 @@ 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;