libavcodec/mlpdec.c:1080: error: Integer Overflow L2
  ([0, 8182] - 1):unsigned32 by call to `ff_mlp_checksum8`.

libavcodec/mlpdec.c:915:5: Assignment
913.     unsigned int length, substr;
914.     unsigned int substream_start;
915.     unsigned int header_size = 4;
         ^
916.     unsigned int substr_header_size = 0;
917.     uint8_t substream_parity_present[MAX_SUBSTREAMS];

libavcodec/mlpdec.c:993:9: Assignment
991. 
992.         substream_parity_present[substr] = checkdata_present;
993.         substream_data_len[substr] = end - substream_start;
             ^
994.         substream_start = end;
995.     }

libavcodec/mlpdec.c:1080:24: Call
1078. 
1079.             parity   = ff_mlp_calculate_parity(buf, substream_data_len[substr] - 2);
1080.             checksum = ff_mlp_checksum8       (buf, substream_data_len[substr] - 2);
                             ^
1081. 
1082.             if ((get_bits(&gb, 8) ^ parity) != 0xa9    )

libavcodec/mlp.c:68:1: <LHS trace>
66. }
67. 
68. uint8_t ff_mlp_checksum8(const uint8_t *buf, unsigned int buf_size)
    ^
69. {
70.     uint8_t checksum = av_crc(crc_63, 0x3c, buf, buf_size - 1); // crc_63[0xa2] == 0x3c

libavcodec/mlp.c:68:1: Parameter `buf_size`
  66. }
  67. 
  68. uint8_t ff_mlp_checksum8(const uint8_t *buf, unsigned int buf_size)
      ^
  69. {
  70.     uint8_t checksum = av_crc(crc_63, 0x3c, buf, buf_size - 1); // crc_63[0xa2] == 0x3c

libavcodec/mlp.c:70:24: Binary operation: ([0, 8182] - 1):unsigned32 by call to `ff_mlp_checksum8` 
  68. uint8_t ff_mlp_checksum8(const uint8_t *buf, unsigned int buf_size)
  69. {
  70.     uint8_t checksum = av_crc(crc_63, 0x3c, buf, buf_size - 1); // crc_63[0xa2] == 0x3c
                             ^
  71.     checksum ^= buf[buf_size-1];
  72.     return checksum;
