libavcodec/wmv2.c:70: error: Buffer Overrun L1
  Offset: [61, 64] (⇐ [5, 8] + 56) Size: 6 by call to `wmv2_add_block`.

libavcodec/wmv2.c:70:5: Call
68. 
69.     wmv2_add_block(w, block1[4], dest_cb                   , s->uvlinesize, 4);
70.     wmv2_add_block(w, block1[5], dest_cr                   , s->uvlinesize, 5);
        ^
71. }
72. 

libavcodec/wmv2.c:35:1: Parameter `n`
  33. }
  34. 
  35. static void wmv2_add_block(Wmv2Context *w, DCTELEM *block1, uint8_t *dst, int stride, int n){
      ^
  36.     MpegEncContext * const s= &w->s;
  37. 

libavcodec/wmv2.c:50:9: Call
  48.     case 2:
  49.         ff_simple_idct48_add(dst           , stride, block1);
  50.         ff_simple_idct48_add(dst + 4       , stride, w->abt_block2[n]);
              ^
  51.         s->dsp.clear_block(w->abt_block2[n]);
  52.         break;

libavcodec/simple_idct.c:192:1: Parameter `*block`
    190. }
    191. 
    192. void ff_simple_idct48_add(uint8_t *dest, int line_size, DCTELEM *block)
         ^
    193. {
    194.     int i;

libavcodec/simple_idct.c:203:9: Call
    201.     /* IDCT8 and store */
    202.     for(i=0; i<4; i++){
    203.         idctSparseColAdd_8(dest + i, line_size, block + i);
                 ^
    204.     }
    205. }

libavcodec/simple_idct_template.c:247:1: <Length trace>
245. }
246. 
247. static inline void FUNC(idctSparseColAdd)(pixel *dest, int line_size,
     ^
248.                                           DCTELEM *col)
249. {

libavcodec/simple_idct_template.c:247:1: Parameter `*col`
      245. }
      246. 
      247. static inline void FUNC(idctSparseColAdd)(pixel *dest, int line_size,
           ^
      248.                                           DCTELEM *col)
      249. {

libavcodec/simple_idct_template.c:252:5: Array access: Offset: [61, 64] (⇐ [5, 8] + 56) Size: 6 by call to `wmv2_add_block` 
      250.     int a0, a1, a2, a3, b0, b1, b2, b3;
      251. 
      252.     IDCT_COLS;
               ^
      253. 
      254.     dest[0] = av_clip_pixel(dest[0] + ((a0 + b0) >> COL_SHIFT));

static inline void FUNC(idctSparseColAdd)(pixel *dest, int line_size,
                                          DCTELEM *col)
{
    int a0, a1, a2, a3, b0, b1, b2, b3;
    IDCT_COLS;
    dest[0] = av_clip_pixel(dest[0] + ((a0 + b0) >> COL_SHIFT));
    dest += line_size;
    dest[0] = av_clip_pixel(dest[0] + ((a1 + b1) >> COL_SHIFT));
    dest += line_size;
    dest[0] = av_clip_pixel(dest[0] + ((a2 + b2) >> COL_SHIFT));
    dest += line_size;
    dest[0] = av_clip_pixel(dest[0] + ((a3 + b3) >> COL_SHIFT));
    dest += line_size;
    dest[0] = av_clip_pixel(dest[0] + ((a3 - b3) >> COL_SHIFT));
    dest += line_size;
    dest[0] = av_clip_pixel(dest[0] + ((a2 - b2) >> COL_SHIFT));
    dest += line_size;
    dest[0] = av_clip_pixel(dest[0] + ((a1 - b1) >> COL_SHIFT));
    dest += line_size;
    dest[0] = av_clip_pixel(dest[0] + ((a0 - b0) >> COL_SHIFT));
}
['void ff_wmv2_add_mb(MpegEncContext *s, DCTELEM block1[6][64], uint8_t *dest_y, uint8_t *dest_cb, uint8_t *dest_cr){\n    Wmv2Context * const w= (Wmv2Context*)s;\n    wmv2_add_block(w, block1[0], dest_y                    , s->linesize, 0);\n    wmv2_add_block(w, block1[1], dest_y + 8                , s->linesize, 1);\n    wmv2_add_block(w, block1[2], dest_y +     8*s->linesize, s->linesize, 2);\n    wmv2_add_block(w, block1[3], dest_y + 8 + 8*s->linesize, s->linesize, 3);\n    if(s->flags&CODEC_FLAG_GRAY) return;\n    wmv2_add_block(w, block1[4], dest_cb                   , s->uvlinesize, 4);\n    wmv2_add_block(w, block1[5], dest_cr                   , s->uvlinesize, 5);\n}', 'static void wmv2_add_block(Wmv2Context *w, DCTELEM *block1, uint8_t *dst, int stride, int n){\n    MpegEncContext * const s= &w->s;\n  if (s->block_last_index[n] >= 0) {\n    switch(w->abt_type_table[n]){\n    case 0:\n        s->dsp.idct_add (dst, stride, block1);\n        break;\n    case 1:\n        ff_simple_idct84_add(dst           , stride, block1);\n        ff_simple_idct84_add(dst + 4*stride, stride, w->abt_block2[n]);\n        s->dsp.clear_block(w->abt_block2[n]);\n        break;\n    case 2:\n        ff_simple_idct48_add(dst           , stride, block1);\n        ff_simple_idct48_add(dst + 4       , stride, w->abt_block2[n]);\n        s->dsp.clear_block(w->abt_block2[n]);\n        break;\n    default:\n        av_log(s->avctx, AV_LOG_ERROR, "internal error in WMV2 abt\\n");\n    }\n  }\n}', 'void ff_simple_idct48_add(uint8_t *dest, int line_size, DCTELEM *block)\n{\n    int i;\n    for(i=0; i<8; i++) {\n        idct4row(block + i*8);\n    }\n    for(i=0; i<4; i++){\n        idctSparseColAdd_8(dest + i, line_size, block + i);\n    }\n}', 'static inline void FUNC(idctSparseColAdd)(pixel *dest, int line_size,\n                                          DCTELEM *col)\n{\n    int a0, a1, a2, a3, b0, b1, b2, b3;\n    IDCT_COLS;\n    dest[0] = av_clip_pixel(dest[0] + ((a0 + b0) >> COL_SHIFT));\n    dest += line_size;\n    dest[0] = av_clip_pixel(dest[0] + ((a1 + b1) >> COL_SHIFT));\n    dest += line_size;\n    dest[0] = av_clip_pixel(dest[0] + ((a2 + b2) >> COL_SHIFT));\n    dest += line_size;\n    dest[0] = av_clip_pixel(dest[0] + ((a3 + b3) >> COL_SHIFT));\n    dest += line_size;\n    dest[0] = av_clip_pixel(dest[0] + ((a3 - b3) >> COL_SHIFT));\n    dest += line_size;\n    dest[0] = av_clip_pixel(dest[0] + ((a2 - b2) >> COL_SHIFT));\n    dest += line_size;\n    dest[0] = av_clip_pixel(dest[0] + ((a1 - b1) >> COL_SHIFT));\n    dest += line_size;\n    dest[0] = av_clip_pixel(dest[0] + ((a0 - b0) >> COL_SHIFT));\n}']