Commit c508fef3 authored by Michael Niedermayer's avatar Michael Niedermayer

Merge commit '324e50ee'

* commit '324e50ee':
  rl: Add a function for freeing dynamically allocated tables.
Merged-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parents 75647622 324e50ee
...@@ -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])
{ {
......
...@@ -55,6 +55,11 @@ typedef struct RLTable { ...@@ -55,6 +55,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, unsigned static_size); void ff_rl_init_vlc(RLTable *rl, unsigned static_size);
/**
* 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