You've already forked FFmpeg
							
							
				mirror of
				https://github.com/FFmpeg/FFmpeg.git
				synced 2025-10-30 23:18:11 +02:00 
			
		
		
		
	Merge commit '2240e2078d53d3cfce8ff1dda64e58fa72038602'
* commit '2240e2078d53d3cfce8ff1dda64e58fa72038602':
  truemotion1: check the header size
See: e7b43e8e84
Merged-by: Michael Niedermayer <michaelni@gmx.at>
			
			
This commit is contained in:
		| @@ -317,12 +317,17 @@ static int truemotion1_decode_header(TrueMotion1Context *s) | ||||
|     const uint8_t *sel_vector_table; | ||||
|  | ||||
|     header.header_size = ((s->buf[0] >> 5) | (s->buf[0] << 3)) & 0x7f; | ||||
|     if (s->buf[0] < 0x10 || header.header_size >= s->size) | ||||
|     if (s->buf[0] < 0x10) | ||||
|     { | ||||
|         av_log(s->avctx, AV_LOG_ERROR, "invalid header size (%d)\n", s->buf[0]); | ||||
|         return AVERROR_INVALIDDATA; | ||||
|     } | ||||
|  | ||||
|     if (header.header_size + 1 > s->size) { | ||||
|         av_log(s->avctx, AV_LOG_ERROR, "Input packet too small.\n"); | ||||
|         return AVERROR_INVALIDDATA; | ||||
|     } | ||||
|  | ||||
|     /* unscramble the header bytes with a XOR operation */ | ||||
|     for (i = 1; i < header.header_size; i++) | ||||
|         header_buffer[i - 1] = s->buf[i] ^ s->buf[i + 1]; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user