Check mb_pos is big enough before trying to access data left or above.
Fixes out-of-bound access for http://samples.mplayerhq.hu/V-codecs/WMV9/nokia_n90.wmv Originally committed as revision 7324 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
		
							parent
							
								
									3b61ab0b03
								
							
						
					
					
						commit
						6f3e4e1712
					
				@ -3072,8 +3072,8 @@ static int vc1_decode_intra_block(VC1Context *v, DCTELEM block[64], int n, int c
 | 
			
		||||
        ac_val -= 16 * s->block_wrap[n];
 | 
			
		||||
 | 
			
		||||
    q1 = s->current_picture.qscale_table[mb_pos];
 | 
			
		||||
    if(dc_pred_dir && c_avail) q2 = s->current_picture.qscale_table[mb_pos - 1];
 | 
			
		||||
    if(!dc_pred_dir && a_avail) q2 = s->current_picture.qscale_table[mb_pos - s->mb_stride];
 | 
			
		||||
    if(dc_pred_dir && c_avail && mb_pos) q2 = s->current_picture.qscale_table[mb_pos - 1];
 | 
			
		||||
    if(!dc_pred_dir && a_avail && mb_pos >= s->mb_stride) q2 = s->current_picture.qscale_table[mb_pos - s->mb_stride];
 | 
			
		||||
    if(n && n<4) q2 = q1;
 | 
			
		||||
 | 
			
		||||
    if(coded) {
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user