Mercurial > libavcodec.hg
comparison aac_parser.c @ 5817:ced30500e2b1 libavcodec
prevent infinite loop and memcpy of negative amounts
fixes issue194
author | michael |
---|---|
date | Sat, 13 Oct 2007 12:25:31 +0000 |
parents | b42e963c8149 |
children | 48759bfbd073 |
comparison
equal
deleted
inserted
replaced
5816:0168cd384df3 | 5817:ced30500e2b1 |
---|---|
65 | 65 |
66 /* adts_variable_header */ | 66 /* adts_variable_header */ |
67 skip_bits1(&bits); /* copyright_identification_bit */ | 67 skip_bits1(&bits); /* copyright_identification_bit */ |
68 skip_bits1(&bits); /* copyright_identification_start */ | 68 skip_bits1(&bits); /* copyright_identification_start */ |
69 size = get_bits(&bits, 13); /* aac_frame_length */ | 69 size = get_bits(&bits, 13); /* aac_frame_length */ |
70 if(size < AAC_HEADER_SIZE) | |
71 return 0; | |
72 | |
70 skip_bits(&bits, 11); /* adts_buffer_fullness */ | 73 skip_bits(&bits, 11); /* adts_buffer_fullness */ |
71 rdb = get_bits(&bits, 2); /* number_of_raw_data_blocks_in_frame */ | 74 rdb = get_bits(&bits, 2); /* number_of_raw_data_blocks_in_frame */ |
72 | 75 |
73 *channels = aac_channels[ch]; | 76 *channels = aac_channels[ch]; |
74 *sample_rate = aac_sample_rates[sr]; | 77 *sample_rate = aac_sample_rates[sr]; |