void BrotliStateCleanupAfterMetablock(BrotliState* s) { BROTLI_FREE(s, s->context_modes); BROTLI_FREE(s, s->context_map); BROTLI_FREE(s, s->dist_context_map); BrotliHuffmanTreeGroupRelease(s, &s->literal_hgroup); BrotliHuffmanTreeGroupRelease(s, &s->insert_copy_hgroup); BrotliHuffmanTreeGroupRelease(s, &s->distance_hgroup); }
void BrotliStateCleanup(BrotliState* s) { int i; if (s->context_map_table != 0) { free(s->context_map_table); } if (s->code_lengths != 0) { free(s->code_lengths); } if (s->context_modes != 0) { free(s->context_modes); } if (s->context_map != 0) { free(s->context_map); } if (s->dist_context_map != 0) { free(s->dist_context_map); } for (i = 0; i < 3; ++i) { BrotliHuffmanTreeGroupRelease(&s->hgroup[i]); } if (s->ringbuffer != 0) { free(s->ringbuffer); } if (s->block_type_trees != 0) { free(s->block_type_trees); } if (s->block_len_trees != 0) { free(s->block_len_trees); } }