h264_sei: Fix infinite loop.

Fixes not yet fixed parts of CVE-2011-3946.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
release/0.10
Michael Niedermayer 13 years ago
parent fe0089a6ed
commit 9decfc17bb
  1. 4
      libavcodec/h264_sei.c

@ -169,11 +169,15 @@ int ff_h264_decode_sei(H264Context *h){
type=0;
do{
if (get_bits_left(&s->gb) < 8)
return -1;
type+= show_bits(&s->gb, 8);
}while(get_bits(&s->gb, 8) == 255);
size=0;
do{
if (get_bits_left(&s->gb) < 8)
return -1;
size+= show_bits(&s->gb, 8);
}while(get_bits(&s->gb, 8) == 255);

Loading…
Cancel
Save