diff options
Diffstat (limited to 'libmpcodecs/vf.c')
-rw-r--r-- | libmpcodecs/vf.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/libmpcodecs/vf.c b/libmpcodecs/vf.c index 25d59838d4..b46d58720a 100644 --- a/libmpcodecs/vf.c +++ b/libmpcodecs/vf.c @@ -299,3 +299,19 @@ vf_instance_t* append_filters(vf_instance_t* last){ //============================================================================ +void vf_uninit_filter(vf_instance_t* vf){ + if(vf->uninit) vf->uninit(vf); + free_mp_image(vf->imgctx.static_images[0]); + free_mp_image(vf->imgctx.static_images[1]); + free_mp_image(vf->imgctx.temp_images[0]); + free_mp_image(vf->imgctx.export_images[0]); + free(vf); +} + +void vf_uninit_filter_chain(vf_instance_t* vf){ + while(vf){ + vf_instance_t* next=vf->next; + vf_uninit_filter(vf); + vf=next; + } +} |