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

libavcodec/alsdec.c:1327:13: Call
1325.             js_blocks[1] = 0;
1326. 
1327.             get_block_sizes(ctx, div_blocks, &bs_info);
                  ^
1328. 
1329.             // if joint_stereo and block_switching is set, independent decoding

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:1340:23: Call
1338. 
1339.             if (independent_bs) {
1340.                 ret = decode_blocks_ind(ctx, ra_frame, c,
                            ^
1341.                                         div_blocks, js_blocks);
1342.                 if (ret < 0)

libavcodec/alsdec.c:1035:1: Parameter `*div_blocks`
  1033. /** Decode blocks independently.
  1034.  */
  1035. static int decode_blocks_ind(ALSDecContext *ctx, unsigned int ra_frame,
        ^
  1036.                              unsigned int c, const unsigned int *div_blocks,
  1037.                              unsigned int *js_blocks)

libavcodec/alsdec.c:1058:9: Assignment
  1056. 
  1057.     for (b = 0; b < ctx->num_blocks; b++) {
  1058.         bd.block_length     = div_blocks[b];
                ^
  1059. 
  1060.         if ((ret = read_decode_block(ctx, &bd)) < 0) {

libavcodec/alsdec.c:1060:20: Call
  1058.         bd.block_length     = div_blocks[b];
  1059. 
  1060.         if ((ret = read_decode_block(ctx, &bd)) < 0) {
                           ^
  1061.             // damaged block, write zero for the rest of the frame
  1062.             zero_remaining(b, ctx->num_blocks, div_blocks, bd.raw_samples);

libavcodec/alsdec.c:1006:1: Parameter `bd->block_length`
    1004. /** Read and decode block data successively.
    1005.  */
    1006. static int read_decode_block(ALSDecContext *ctx, ALSBlockData *bd)
          ^
    1007. {
    1008.     int ret;

libavcodec/alsdec.c:1013:12: Call
    1011.         return ret;
    1012. 
    1013.     return decode_block(ctx, bd);
                     ^
    1014. }
    1015. 

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_blocks_ind` 
        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;
