| 
																	
																	
																		
																	
																	
																 | 
																@@ -410,6 +410,14 @@ int ff_msmpeg4_decode_picture_header(MpegEncContext * s) | 
															
														
														
													
														
															
																 | 
																 | 
																{ | 
																 | 
																 | 
																{ | 
															
														
														
													
														
															
																 | 
																 | 
																    int code; | 
																 | 
																 | 
																    int code; | 
															
														
														
													
														
															
																 | 
																 | 
																
  | 
																 | 
																 | 
																
  | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																    // at minimum one bit per macroblock is required at least in a valid frame, | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																    // we discard frames much smaller than this. Frames smaller than 1/8 of the | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																    // smallest "black/skip" frame generally contain not much recoverable content | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																    // while at the same time they have the highest computational requirements | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																    // per byte | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																    if (get_bits_left(&s->gb) * 8LL < (s->width+15)/16 * ((s->height+15)/16)) | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																        return AVERROR_INVALIDDATA; | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																
  | 
															
														
														
													
														
															
																 | 
																 | 
																    if(s->msmpeg4_version==1){ | 
																 | 
																 | 
																    if(s->msmpeg4_version==1){ | 
															
														
														
													
														
															
																 | 
																 | 
																        int start_code = get_bits_long(&s->gb, 32); | 
																 | 
																 | 
																        int start_code = get_bits_long(&s->gb, 32); | 
															
														
														
													
														
															
																 | 
																 | 
																        if(start_code!=0x00000100){ | 
																 | 
																 | 
																        if(start_code!=0x00000100){ | 
															
														
														
													
												
													
														
															
																| 
																	
																		
																	
																	
																	
																 | 
																
  |