alac: reject rice_limit 0 if compression is used
If rice_limit is 0, k can be 0 in decode_scalar, which calls show_bits(gb, k). Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
		
							parent
							
								
									802c0af68f
								
							
						
					
					
						commit
						4b657a1b1e
					
				| @ -316,6 +316,11 @@ static int decode_element(AVCodecContext *avctx, AVFrame *frame, int ch_index, | |||||||
|         int lpc_quant[2]; |         int lpc_quant[2]; | ||||||
|         int rice_history_mult[2]; |         int rice_history_mult[2]; | ||||||
| 
 | 
 | ||||||
|  |         if (!alac->rice_limit) { | ||||||
|  |             avpriv_request_sample(alac->avctx, "Compression with rice limit 0"); | ||||||
|  |             return AVERROR(ENOSYS); | ||||||
|  |         } | ||||||
|  | 
 | ||||||
|         decorr_shift       = get_bits(&alac->gb, 8); |         decorr_shift       = get_bits(&alac->gb, 8); | ||||||
|         decorr_left_weight = get_bits(&alac->gb, 8); |         decorr_left_weight = get_bits(&alac->gb, 8); | ||||||
| 
 | 
 | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user