]> rtime.felk.cvut.cz Git - frescor/ffmpeg.git/commitdiff
Ensure that we don't read from invalid memory with B-frame qpel
authorconrad <conrad@9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
Fri, 15 May 2009 07:49:59 +0000 (07:49 +0000)
committerconrad <conrad@9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
Fri, 15 May 2009 07:49:59 +0000 (07:49 +0000)
git-svn-id: file:///var/local/repositories/ffmpeg/trunk@18839 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b

libavcodec/vc1.c

index 3a5b447667c801e026f49ace2f3b22c446ea8fdf..82bf8db0de5ca0e4ff89954a857e90b97d081369 100644 (file)
@@ -1818,8 +1818,8 @@ static void vc1_interp_mc(VC1Context *v)
     }
 
     if(v->rangeredfrm
-       || (unsigned)src_x > s->h_edge_pos - (mx&3) - 16
-       || (unsigned)src_y > s->v_edge_pos - (my&3) - 16){
+       || (unsigned)src_x > s->h_edge_pos - (mx&3) - 16 - s->mspel*3
+       || (unsigned)src_y > s->v_edge_pos - (my&3) - 16 - s->mspel*3){
         uint8_t *uvbuf= s->edge_emu_buffer + 19 * s->linesize;
 
         srcY -= s->mspel * (1 + s->linesize);