libavcodec/h264.c:1046: error: Buffer Overrun L3
  Offset: [-1052488119, 3] Size: 4 by call to `decode_nal_units`.

libavcodec/h264.c:1046:17: Call
1044.     }
1045. 
1046.     buf_index = decode_nal_units(h, buf, buf_size);
                      ^
1047.     if (buf_index < 0)
1048.         return AVERROR_INVALIDDATA;

libavcodec/h264.c:818:11: Call
  816.     }
  817. 
  818.     ret = ff_h2645_packet_split(&h->pkt, buf, buf_size, avctx, h->is_avc,
                 ^
  819.                                 h->nal_length_size, avctx->codec_id);
  820.     if (ret < 0) {

libavcodec/h2645_parse.c:260:15: Call
    258.         nal->size_bits = get_bit_length(nal, skip_trailing_zeros);
    259. 
    260.         ret = init_get_bits(&nal->gb, nal->data, nal->size_bits);
                       ^
    261.         if (ret < 0)
    262.             return ret;

libavcodec/get_bits.h:384:1: Parameter `bit_size`
      382.  * @return 0 on success, AVERROR_INVALIDDATA if the buffer_size would overflow.
      383.  */
      384. static inline int init_get_bits(GetBitContext *s, const uint8_t *buffer,
           ^
      385.                                 int bit_size)
      386. {

libavcodec/get_bits.h:401:5: Assignment
      399.     s->size_in_bits       = bit_size;
      400. #if !UNCHECKED_BITSTREAM_READER
      401.     s->size_in_bits_plus8 = bit_size + 8;
               ^
      402. #endif
      403.     s->buffer_end         = buffer + buffer_size;

libavcodec/h264.c:1046:17: Call
1044.     }
1045. 
1046.     buf_index = decode_nal_units(h, buf, buf_size);
                      ^
1047.     if (buf_index < 0)
1048.         return AVERROR_INVALIDDATA;

libavcodec/h264.c:804:1: Parameter `h->slice_ctx->intra16x16_pred_mode`
  802. }
  803. 
  804. static int decode_nal_units(H264Context *h, const uint8_t *buf, int buf_size)
       ^
  805. {
  806.     AVCodecContext *const avctx = h->avctx;

libavcodec/h264.c:950:15: Call
  948.     }
  949.     if (context_count) {
  950.         ret = ff_h264_execute_decode_slices(h, context_count);
                     ^
  951.         if (ret < 0 && (h->avctx->err_recognition & AV_EF_EXPLODE))
  952.             goto end;

libavcodec/h264_slice.c:2113:1: Parameter `h->slice_ctx->intra16x16_pred_mode`
    2111.  * @param context_count number of contexts to execute
    2112.  */
    2113. int ff_h264_execute_decode_slices(H264Context *h, unsigned context_count)
          ^
    2114. {
    2115.     AVCodecContext *const avctx = h->avctx;

libavcodec/h264_slice.c:2127:15: Call
    2125.         h->postpone_filter = 0;
    2126. 
    2127.         ret = decode_slice(avctx, &h->slice_ctx[0]);
                        ^
    2128.         h->mb_y = h->slice_ctx[0].mb_y;
    2129.         return ret;

libavcodec/h264_slice.c:1917:1: Parameter `arg->intra16x16_pred_mode`
      1915. }
      1916. 
      1917. static int decode_slice(struct AVCodecContext *avctx, void *arg)
            ^
      1918. {
      1919.     H264SliceContext *sl = arg;

libavcodec/h264_slice.c:1962:19: Call
      1960.             }
      1961. 
      1962.             ret = ff_h264_decode_mb_cabac(h, sl);
                              ^
      1963.             // STOP_TIMER("decode_mb_cabac")
      1964. 

libavcodec/h264_cabac.c:1909:1: Parameter `sl->intra16x16_pred_mode`
        1907.  * @return 0 if OK, ER_AC_ERROR / ER_DC_ERROR / ER_MV_ERROR if an error is noticed
        1908.  */
        1909. int ff_h264_decode_mb_cabac(const H264Context *h, H264SliceContext *sl)
              ^
        1910. {
        1911.     const SPS *sps = h->ps.sps;

libavcodec/h264_cabac.c:2084:40: Call
        2082.                 return -1;
        2083.         } else {
        2084.             sl->intra16x16_pred_mode = ff_h264_check_intra_pred_mode(h->avctx, sl->top_samples_available,
                                                     ^
        2085.                                                                      sl->left_samples_available, sl->intra16x16_pred_mode, 0);
        2086.             if (sl->intra16x16_pred_mode < 0) return -1;

libavcodec/h264_parse.c:141:1: <Offset trace>
139.  * change the dc mode so it only uses the available blocks.
140.  */
141. int ff_h264_check_intra_pred_mode(void *logctx, int top_samples_available,
     ^
142.                                   int left_samples_available,
143.                                   int mode, int is_chroma)

libavcodec/h264_parse.c:141:1: Parameter `mode`
          139.  * change the dc mode so it only uses the available blocks.
          140.  */
          141. int ff_h264_check_intra_pred_mode(void *logctx, int top_samples_available,
               ^
          142.                                   int left_samples_available,
          143.                                   int mode, int is_chroma)

libavcodec/h264_parse.c:145:5: <Length trace>
143.                                   int mode, int is_chroma)
144. {
145.     static const int8_t top[4]  = { LEFT_DC_PRED8x8, 1, -1, -1 };
         ^
146.     static const int8_t left[5] = { TOP_DC_PRED8x8, -1,  2, -1, DC_128_PRED8x8 };
147. 

libavcodec/h264_parse.c:145:5: Array declaration
          143.                                   int mode, int is_chroma)
          144. {
          145.     static const int8_t top[4]  = { LEFT_DC_PRED8x8, 1, -1, -1 };
                   ^
          146.     static const int8_t left[5] = { TOP_DC_PRED8x8, -1,  2, -1, DC_128_PRED8x8 };
          147. 

libavcodec/h264_parse.c:155:16: Array access: Offset: [-1052488119, 3] Size: 4 by call to `decode_nal_units` 
          153. 
          154.     if (!(top_samples_available & 0x8000)) {
          155.         mode = top[mode];
                              ^
          156.         if (mode < 0) {
          157.             av_log(logctx, AV_LOG_ERROR,
