libavcodec/alsdec.c:1416: error: Integer Overflow L2
  ([0, +oo] - 1):unsigned32 by call to `decode_block`.

libavcodec/alsdec.c:1375:9: Call
1373.         bd.prev_raw_samples = ctx->prev_raw_samples;
1374. 
1375.         get_block_sizes(ctx, div_blocks, &bs_info);
              ^
1376. 
1377.         for (b = 0; b < ctx->num_blocks; b++) {

libavcodec/alsdec.c:499:1: Parameter `ctx->sconf.frame_length`
  497.  *  actual number of samples.
  498.  */
  499. static void get_block_sizes(ALSDecContext *ctx, unsigned int *div_blocks,
       ^
  500.                             uint32_t *bs_info)
  501. {

libavcodec/alsdec.c:532:9: Assignment
  530. 
  531.     for (b = 0; b < ctx->num_blocks; b++)
  532.         div_blocks[b] = ctx->sconf.frame_length >> div_blocks[b];
               ^
  533. 
  534.     if (ctx->cur_frame_length != ctx->sconf.frame_length) {

libavcodec/alsdec.c:1378:13: Assignment
1376. 
1377.         for (b = 0; b < ctx->num_blocks; b++) {
1378.             bd.block_length = div_blocks[b];
                  ^
1379. 
1380.             for (c = 0; c < avctx->channels; c++) {

libavcodec/alsdec.c:1416:28: Call
1414.                 bd.quant_cof   = ctx->quant_cof[c];
1415.                 bd.raw_samples = ctx->raw_samples[c] + offset;
1416.                 if ((ret = decode_block(ctx, &bd)) < 0)
                                 ^
1417.                     return ret;
1418.             }

libavcodec/alsdec.c:980:1: Parameter `bd->block_length`
  978. /** Decode the block data.
  979.  */
  980. static int decode_block(ALSDecContext *ctx, ALSBlockData *bd)
       ^
  981. {
  982.     unsigned int smp;

libavcodec/alsdec.c:987:9: Call
  985.     // read block type flag and read the samples accordingly
  986.     if (*bd->const_block)
  987.         decode_const_block_data(ctx, bd);
               ^
  988.     else
  989.         ret = decode_var_block_data(ctx, bd); // always return 0

libavcodec/alsdec.c:577:1: <LHS trace>
575. /** Decode the block data for a constant block
576.  */
577. static void decode_const_block_data(ALSDecContext *ctx, ALSBlockData *bd)
     ^
578. {
579.     int      smp = bd->block_length - 1;

libavcodec/alsdec.c:577:1: Parameter `bd->block_length`
    575. /** Decode the block data for a constant block
    576.  */
    577. static void decode_const_block_data(ALSDecContext *ctx, ALSBlockData *bd)
         ^
    578. {
    579.     int      smp = bd->block_length - 1;

libavcodec/alsdec.c:579:5: Binary operation: ([0, +oo] - 1):unsigned32 by call to `decode_block` 
    577. static void decode_const_block_data(ALSDecContext *ctx, ALSBlockData *bd)
    578. {
    579.     int      smp = bd->block_length - 1;
             ^
    580.     int32_t  val = *bd->raw_samples;
    581.     int32_t *dst = bd->raw_samples + 1;
