libavcodec/h264_mvpred.h:818: error: Buffer Overrun L2
  Offset: [1, 6] (⇐ [0, 3] + [1, 3]) Size: 4 by call to `fill_decode_caches`.

libavcodec/h264_mvpred.h:817:13: Call
815.         mb_type |= MB_TYPE_L0L1 | MB_TYPE_DIRECT2 | MB_TYPE_SKIP;
816.         if (sl->direct_spatial_mv_pred) {
817.             fill_decode_neighbors(h, sl, mb_type);
                 ^
818.             fill_decode_caches(h, sl, mb_type); //FIXME check what is needed and what not ...
819.         }

libavcodec/h264_mvpred.h:360:5: Array declaration
  358.     const int mb_xy = sl->mb_xy;
  359.     int topleft_xy, top_xy, topright_xy, left_xy[LEFT_MBS];
  360.     static const uint8_t left_block_options[4][32] = {
           ^
  361.         { 0, 1, 2, 3, 7, 10, 8, 11, 3 + 0 * 4, 3 + 1 * 4, 3 + 2 * 4, 3 + 3 * 4, 1 + 4 * 4, 1 + 8 * 4, 1 + 5 * 4, 1 + 9 * 4 },
  362.         { 2, 2, 3, 3, 8, 11, 8, 11, 3 + 2 * 4, 3 + 2 * 4, 3 + 3 * 4, 3 + 3 * 4, 1 + 5 * 4, 1 + 9 * 4, 1 + 5 * 4, 1 + 9 * 4 },

libavcodec/h264_mvpred.h:377:5: Assignment
  375.     topright_xy   = top_xy + 1;
  376.     left_xy[LBOT] = left_xy[LTOP] = mb_xy - 1;
  377.     sl->left_block = left_block_options[0];
           ^
  378.     if (FRAME_MBAFF(h)) {
  379.         const int left_mb_field_flag = IS_INTERLACED(h->cur_pic.mb_type[mb_xy - 1]);

libavcodec/h264_mvpred.h:818:13: Call
816.         if (sl->direct_spatial_mv_pred) {
817.             fill_decode_neighbors(h, sl, mb_type);
818.             fill_decode_caches(h, sl, mb_type); //FIXME check what is needed and what not ...
                 ^
819.         }
820.         ff_h264_pred_direct_motion(h, sl, &mb_type);

libavcodec/h264_mvpred.h:519:22: <Offset trace>
517.                     sl->intra4x4_pred_mode_cache[7 + 8 * 0] = 2 - 3 * !(top_type & type_mask);
518.                 }
519.                 for (i = 0; i < 2; i++) {
                          ^
520.                     if (IS_INTRA4x4(left_type[LEFT(i)])) {
521.                         int8_t *mode = sl->intra4x4_pred_mode + h->mb2br_xy[left_xy[LEFT(i)]];

libavcodec/h264_mvpred.h:519:22: Assignment
  517.                     sl->intra4x4_pred_mode_cache[7 + 8 * 0] = 2 - 3 * !(top_type & type_mask);
  518.                 }
  519.                 for (i = 0; i < 2; i++) {
                            ^
  520.                     if (IS_INTRA4x4(left_type[LEFT(i)])) {
  521.                         int8_t *mode = sl->intra4x4_pred_mode + h->mb2br_xy[left_xy[LEFT(i)]];

libavcodec/h264_mvpred.h:445:1: <Length trace>
443. }
444. 
445. static void fill_decode_caches(const H264Context *h, H264SliceContext *sl, int mb_type)
     ^
446. {
447.     int topleft_xy, top_xy, topright_xy, left_xy[LEFT_MBS];

libavcodec/h264_mvpred.h:445:1: Parameter `*sl->left_block`
  443. }
  444. 
  445. static void fill_decode_caches(const H264Context *h, H264SliceContext *sl, int mb_type)
       ^
  446. {
  447.     int topleft_xy, top_xy, topright_xy, left_xy[LEFT_MBS];

libavcodec/h264_mvpred.h:449:5: Assignment
  447.     int topleft_xy, top_xy, topright_xy, left_xy[LEFT_MBS];
  448.     int topleft_type, top_type, topright_type, left_type[LEFT_MBS];
  449.     const uint8_t *left_block = sl->left_block;
           ^
  450.     int i;
  451.     uint8_t *nnz;

libavcodec/h264_mvpred.h:523:88: Array access: Offset: [1, 6] (⇐ [0, 3] + [1, 3]) Size: 4 by call to `fill_decode_caches` 
  521.                         int8_t *mode = sl->intra4x4_pred_mode + h->mb2br_xy[left_xy[LEFT(i)]];
  522.                         sl->intra4x4_pred_mode_cache[3 + 8 * 1 + 2 * 8 * i] = mode[6 - left_block[0 + 2 * i]];
  523.                         sl->intra4x4_pred_mode_cache[3 + 8 * 2 + 2 * 8 * i] = mode[6 - left_block[1 + 2 * i]];
                                                                                              ^
  524.                     } else {
  525.                         sl->intra4x4_pred_mode_cache[3 + 8 * 1 + 2 * 8 * i] =
