fcode_tables where too small, found by Klaas-Pieter Vlieg <vlieg@eurescom.de>
authorMichael Niedermayer <michaelni@gmx.at>
Sun, 24 Mar 2002 23:45:13 +0000 (23:45 +0000)
committerMichael Niedermayer <michaelni@gmx.at>
Sun, 24 Mar 2002 23:45:13 +0000 (23:45 +0000)
Originally committed as revision 360 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/h263.c
libavcodec/mpeg12.c
libavcodec/mpegvideo.c

index 0a83a4d..01b7acc 100644 (file)
@@ -53,7 +53,7 @@ static void mpeg4_decode_sprite_trajectory(MpegEncContext * s);
 
 extern UINT32 inverse[256];
 
-static UINT16 mv_penalty[MAX_FCODE][MAX_MV*2+1];
+static UINT16 mv_penalty[MAX_FCODE+1][MAX_MV*2+1];
 static UINT8 fcode_tab[MAX_MV*2+1];
 static UINT8 umv_fcode_tab[MAX_MV*2+1];
 
index fba90e7..4d61df5 100644 (file)
@@ -51,7 +51,7 @@ static int mpeg2_decode_block_intra(MpegEncContext *s,
                                     int n);
 static int mpeg_decode_motion(MpegEncContext *s, int fcode, int pred);
 
-static UINT16 mv_penalty[MAX_FCODE][MAX_MV*2+1];
+static UINT16 mv_penalty[MAX_FCODE+1][MAX_MV*2+1];
 static UINT8 fcode_tab[MAX_MV*2+1];
 
 static void put_header(MpegEncContext *s, int header)
index 26f1a07..a4d649c 100644 (file)
@@ -67,7 +67,7 @@ static UINT8 h263_chroma_roundtab[16] = {
     0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2,
 };
 
-static UINT16 default_mv_penalty[MAX_FCODE][MAX_MV*2+1];
+static UINT16 default_mv_penalty[MAX_FCODE+1][MAX_MV*2+1];
 static UINT8 default_fcode_tab[MAX_MV*2+1];
 
 /* default motion estimation */
@@ -366,7 +366,7 @@ int MPV_encode_init(AVCodecContext *avctx)
         if(!done){
             int i;
             done=1;
-            memset(default_mv_penalty, 0, sizeof(UINT16)*MAX_FCODE*(2*MAX_MV+1));
+            memset(default_mv_penalty, 0, sizeof(UINT16)*(MAX_FCODE+1)*(2*MAX_MV+1));
             memset(default_fcode_tab , 0, sizeof(UINT8)*(2*MAX_MV+1));
 
             for(i=-16; i<16; i++){