You've already forked FFmpeg
							
							
				mirror of
				https://github.com/FFmpeg/FFmpeg.git
				synced 2025-10-30 23:18:11 +02:00 
			
		
		
		
	avformat/kvag: Check sample_rate
Fixes: Division by 0
Fixes: -copyts -start_at_zero -itsoffset 00:00:01 -itsscale 1 -ss 00:00:02  -i zgclab/ffmpeg_crash/poc1 output.mp4
Found-by: Wang Dawei and Zhou Geng, from Zhongguancun Laboratory
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
(cherry picked from commit c26a762ea1)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
			
			
This commit is contained in:
		| @@ -37,7 +37,7 @@ | ||||
| typedef struct KVAGHeader { | ||||
|     uint32_t    magic; | ||||
|     uint32_t    data_size; | ||||
|     uint32_t    sample_rate; | ||||
|     int    sample_rate; | ||||
|     uint16_t    stereo; | ||||
| } KVAGHeader; | ||||
|  | ||||
| @@ -69,6 +69,9 @@ static int kvag_read_header(AVFormatContext *s) | ||||
|     hdr.sample_rate             = AV_RL32(buf +  8); | ||||
|     hdr.stereo                  = AV_RL16(buf + 12); | ||||
|  | ||||
|     if (hdr.sample_rate <= 0) | ||||
|         return AVERROR_INVALIDDATA; | ||||
|  | ||||
|     par                         = st->codecpar; | ||||
|     par->codec_type             = AVMEDIA_TYPE_AUDIO; | ||||
|     par->codec_id               = AV_CODEC_ID_ADPCM_IMA_SSI; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user