Merge commit 'f5ba67ee1342b7741200ff637fc3ea3387b68a1b'
authorMichael Niedermayer <michaelni@gmx.at>
Wed, 29 Apr 2015 01:32:47 +0000 (03:32 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Wed, 29 Apr 2015 01:32:47 +0000 (03:32 +0200)
* commit 'f5ba67ee1342b7741200ff637fc3ea3387b68a1b':
  flacenc: Move a scratch buffer to struct used by the function

Conflicts:
libavcodec/flacenc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
1  2 
libavcodec/flacenc.c

@@@ -647,20 -617,18 +648,18 @@@ static uint64_t calc_rice_params(RiceCo
      uint64_t bits[MAX_PARTITION_ORDER+1];
      int opt_porder;
      RiceContext tmp_rc;
-     uint32_t *udata;
 -    uint64_t sums[MAX_PARTITION_ORDER + 1][MAX_PARTITIONS] = { { 0 } };
 +    uint64_t sums[MAX_PARTITIONS];
  
 -    assert(pmin >= 0 && pmin <= MAX_PARTITION_ORDER);
 -    assert(pmax >= 0 && pmax <= MAX_PARTITION_ORDER);
 -    assert(pmin <= pmax);
 +    av_assert1(pmin >= 0 && pmin <= MAX_PARTITION_ORDER);
 +    av_assert1(pmax >= 0 && pmax <= MAX_PARTITION_ORDER);
 +    av_assert1(pmin <= pmax);
  
      tmp_rc.coding_mode = rc->coding_mode;
  
-     udata = av_malloc_array(n,  sizeof(uint32_t));
      for (i = 0; i < n; i++)
-         udata[i] = (2*data[i]) ^ (data[i]>>31);
+         rc->udata[i] = (2 * data[i]) ^ (data[i] >> 31);
  
-     calc_sum_top(pmax, udata, n, pred_order, sums);
 -    calc_sums(pmin, pmax, rc->udata, n, pred_order, sums);
++    calc_sum_top(pmax, rc->udata, n, pred_order, sums);
  
      opt_porder = pmin;
      bits[pmin] = UINT32_MAX;
              opt_porder = i;
              *rc = tmp_rc;
          }
 +        if (i == pmin)
 +            break;
 +        calc_sum_next(--i, sums);
      }
  
-     av_freep(&udata);
      return bits[opt_porder];
  }