From 2e97e244097c309571b383dd107252404ebb3326 Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Fri, 22 Nov 2013 19:47:34 +0100 Subject: avformat/ipmovie: check OPCODE_INIT_VIDEO_BUFFERS size more completely Fixes use of uninitialized data Fixes: signal_sigsegv_1571228_5930_ipmovie_interplayvideo_interplay_dpcm__bislogo.mve Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer --- libavformat/ipmovie.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'libavformat/ipmovie.c') diff --git a/libavformat/ipmovie.c b/libavformat/ipmovie.c index 676363b628..368c05922d 100644 --- a/libavformat/ipmovie.c +++ b/libavformat/ipmovie.c @@ -376,7 +376,7 @@ static int process_ipmovie_chunk(IPMVEContext *s, AVIOContext *pb, case OPCODE_INIT_VIDEO_BUFFERS: av_dlog(NULL, "initialize video buffers\n"); - if ((opcode_version > 2) || (opcode_size > 8)) { + if ((opcode_version > 2) || (opcode_size > 8) || opcode_size < 4) { av_dlog(NULL, "bad init_video_buffers opcode\n"); chunk_type = CHUNK_BAD; break; -- cgit v1.2.3