fix leak on exit in aclib

This commit is contained in:
niels
2015-06-23 23:47:17 +02:00
parent bfeeaac6a6
commit d80cee0337
4 changed files with 18 additions and 4 deletions

View File

@@ -80,6 +80,8 @@ extern void ac_rescale(const uint8_t *src1, const uint8_t *src2,
uint8_t *dest, int bytes,
uint32_t weight1, uint32_t weight2);
extern void ac_destroy();
/* Image format manipulation is available in aclib/imgconvert.h */
/*************************************************************************/

View File

@@ -106,6 +106,12 @@ int register_conversion(ImageFormat srcfmt, ImageFormat destfmt,
return 1;
}
void ac_destroy()
{
if( n_conversions > 0 )
free(conversions);
}
/*************************************************************************/
/*

View File

@@ -154,6 +154,11 @@ void vj_mem_init(void)
task_init();
}
void vj_mem_destroy()
{
ac_destroy();
}
int vj_mem_threaded_init(int w, int h)
{
int n_cpus = task_num_cpus();

View File

@@ -57,8 +57,9 @@ extern void benchmark_veejay(int w, int h);
extern void *vj_hmalloc(size_t sze, const char *name);
extern char *vj_strdup(const char *s);
extern char *vj_strndup(const char *s, size_t n );
void vj_simple_pool_free( void *ptr );
void *vj_simple_pool_alloc( void *ptr, size_t s );
void *vj_simple_pool_init( size_t s );
void vj_simple_pool_reset( void *ptr );
extern void vj_simple_pool_free( void *ptr );
extern void *vj_simple_pool_alloc( void *ptr, size_t s );
extern void *vj_simple_pool_init( size_t s );
extern void vj_simple_pool_reset( void *ptr );
extern void vj_mem_destroy();
#endif