const uint8_t *table_bits = vlc_table->huffbits;
const uint32_t *table_codes = vlc_table->huffcodes;
const uint16_t *levels_table = vlc_table->levels;
- uint16_t *run_table, *level_table, *int_table;
+ uint16_t *run_table, *int_table;
float *flevel_table;
int i, l, j, k, level;
init_vlc(vlc, VLCBITS, n, table_bits, 1, 1, table_codes, 4, 4, 0);
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) {
+ if (!run_table || !flevel_table || !int_table) {
av_freep(&run_table);
- av_freep(&level_table);
av_freep(&flevel_table);
av_freep(&int_table);
return AVERROR(ENOMEM);
l = levels_table[k++];
for (j = 0; j < l; j++) {
run_table[i] = j;
- level_table[i] = level;
flevel_table[i] = level;
i++;
}
*prun_table = run_table;
*plevel_table = flevel_table;
*pint_table = int_table;
- av_free(level_table);
return 0;
}