Mercurial > libavcodec.hg
comparison mjpeg.c @ 2789:587ed6630b5d libavcodec
check len (should fix #1165694)
author | michael |
---|---|
date | Mon, 11 Jul 2005 23:39:47 +0000 |
parents | e25782262d7d |
children | eb488002ab4a |
comparison
equal
deleted
inserted
replaced
2788:1bf080e490db | 2789:587ed6630b5d |
---|---|
1583 | 1583 |
1584 static int mjpeg_decode_app(MJpegDecodeContext *s) | 1584 static int mjpeg_decode_app(MJpegDecodeContext *s) |
1585 { | 1585 { |
1586 int len, id; | 1586 int len, id; |
1587 | 1587 |
1588 /* XXX: verify len field validity */ | |
1589 len = get_bits(&s->gb, 16); | 1588 len = get_bits(&s->gb, 16); |
1590 if (len < 5) | 1589 if (len < 5) |
1591 return -1; | 1590 return -1; |
1591 if(8*len + get_bits_count(&s->gb) > s->gb.size_in_bits) | |
1592 return -1; | |
1592 | 1593 |
1593 id = (get_bits(&s->gb, 16) << 16) | get_bits(&s->gb, 16); | 1594 id = (get_bits(&s->gb, 16) << 16) | get_bits(&s->gb, 16); |
1594 id = be2me_32(id); | 1595 id = be2me_32(id); |
1595 len -= 6; | 1596 len -= 6; |
1596 | 1597 |