Commit 324e50ee authored by Anton Khirnov's avatar Anton Khirnov Committed by Vittorio Giovara

rl: Add a function for freeing dynamically allocated tables.

Such tables are not used anywhere currently, but that should change.
parent 6f57375d
...@@ -19,9 +19,21 @@ ...@@ -19,9 +19,21 @@
#include <stdint.h> #include <stdint.h>
#include "libavutil/attributes.h" #include "libavutil/attributes.h"
#include "libavutil/mem.h"
#include "rl.h" #include "rl.h"
void ff_rl_free(RLTable *rl)
{
int i;
for (i = 0; i < 2; i++) {
av_freep(&rl->max_run[i]);
av_freep(&rl->max_level[i]);
av_freep(&rl->index_run[i]);
}
}
av_cold void ff_rl_init(RLTable *rl, av_cold void ff_rl_init(RLTable *rl,
uint8_t static_store[2][2 * MAX_RUN + MAX_LEVEL + 3]) uint8_t static_store[2][2 * MAX_RUN + MAX_LEVEL + 3])
{ {
......
...@@ -56,6 +56,11 @@ typedef struct RLTable { ...@@ -56,6 +56,11 @@ typedef struct RLTable {
void ff_rl_init(RLTable *rl, uint8_t static_store[2][2*MAX_RUN + MAX_LEVEL + 3]); void ff_rl_init(RLTable *rl, uint8_t static_store[2][2*MAX_RUN + MAX_LEVEL + 3]);
void ff_rl_init_vlc(RLTable *rl); void ff_rl_init_vlc(RLTable *rl);
/**
* Free the contents of a dynamically allocated table.
*/
void ff_rl_free(RLTable *rl);
#define INIT_VLC_RL(rl, static_size)\ #define INIT_VLC_RL(rl, static_size)\
{\ {\
int q;\ int q;\
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment