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];