From d8b29c80d5ab6f0a7d406df58c99a707132e6b8a Mon Sep 17 00:00:00 2001 From: reimar Date: Fri, 11 Jul 2008 22:03:01 +0000 Subject: Check size of tkdata before using it in mov demuxer. Fixes bug #1170 and others. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27265 b3059339-0415-0410-9bf9-f77b7e298cf2 --- libmpdemux/demux_mov.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libmpdemux/demux_mov.c b/libmpdemux/demux_mov.c index 4a3f3c8528..b244a3e402 100644 --- a/libmpdemux/demux_mov.c +++ b/libmpdemux/demux_mov.c @@ -1114,6 +1114,7 @@ static int gen_sh_video(sh_video_t* sh, mov_track_t* trak, int timescale) { sh->disp_w=trak->stdata[25]|(trak->stdata[24]<<8); sh->disp_h=trak->stdata[27]|(trak->stdata[26]<<8); + if(trak->tkdata_len>81) { // if image size is zero, fallback to display size if(!sh->disp_w && !sh->disp_h) { sh->disp_w=trak->tkdata[77]|(trak->tkdata[76]<<8); @@ -1123,6 +1124,7 @@ static int gen_sh_video(sh_video_t* sh, mov_track_t* trak, int timescale) { sh->aspect=trak->tkdata[77]|(trak->tkdata[76]<<8); sh->aspect/=trak->tkdata[81]|(trak->tkdata[80]<<8); } + } if(depth>32+8) mp_msg(MSGT_DEMUX, MSGL_INFO,"*** depth = 0x%X\n",depth); -- cgit v1.2.3