Merge commit '596b5c488fa1d40f114a64d3b73e1863cab073fb'
authorMichael Niedermayer <michaelni@gmx.at>
Fri, 19 Dec 2014 04:36:20 +0000 (05:36 +0100)
committerMichael Niedermayer <michaelni@gmx.at>
Fri, 19 Dec 2014 04:36:20 +0000 (05:36 +0100)
* commit '596b5c488fa1d40f114a64d3b73e1863cab073fb':
  wma: check memory allocations and propagate errors

Conflicts:
libavcodec/wma.c

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

@@@ -47,10 -47,17 +47,17 @@@ static av_cold int init_coef_vlc(VLC *v
  
      init_vlc(vlc, VLCBITS, n, table_bits, 1, 1, table_codes, 4, 4, 0);
  
 -    run_table    = av_malloc(n * sizeof(uint16_t));
 -    level_table  = av_malloc(n * sizeof(uint16_t));
 -    flevel_table = av_malloc(n * sizeof(*flevel_table));
 -    int_table    = av_malloc(n * sizeof(uint16_t));
 +    run_table    = av_malloc_array(n, sizeof(uint16_t));
 +    level_table  = av_malloc_array(n, sizeof(uint16_t));
 +    flevel_table = av_malloc_array(n, sizeof(*flevel_table));
 +    int_table    = av_malloc_array(n, sizeof(uint16_t));
+     if (!run_table || !level_table || !flevel_table || !int_table) {
+         av_freep(&run_table);
+         av_freep(&level_table);
+         av_freep(&flevel_table);
+         av_freep(&int_table);
+         return AVERROR(ENOMEM);
+     }
      i            = 2;
      level        = 1;
      k            = 0;