summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libmpcodecs/ve_nuv.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/libmpcodecs/ve_nuv.c b/libmpcodecs/ve_nuv.c
index f88e558cb9..1cff9e28a2 100644
--- a/libmpcodecs/ve_nuv.c
+++ b/libmpcodecs/ve_nuv.c
@@ -176,6 +176,17 @@ static int put_image(struct vf_instance_s* vf, mp_image_t *mpi){
return 1;
}
+static void uninit(struct vf_instance_s* vf) {
+
+ if(vf->priv->buffer)
+ free(vf->priv->buffer);
+ if(vf->priv->zbuffer)
+ free(vf->priv->zbuffer);
+ if(vf->priv->zmem)
+ free(vf->priv->zmem);
+
+}
+
//===========================================================================//
static int vf_open(vf_instance_t *vf, char* args){
@@ -183,9 +194,9 @@ static int vf_open(vf_instance_t *vf, char* args){
vf->control=control;
vf->query_format=query_format;
vf->put_image=put_image;
+ vf->uninit = uninit;
vf->priv=malloc(sizeof(struct vf_priv_s));
memcpy(vf->priv, &nuv_priv_dflt,sizeof(struct vf_priv_s));
- //memset(vf->priv,0,sizeof(struct vf_priv_s));
vf->priv->mux=(muxer_stream_t*)args;
mux_v->bih=malloc(sizeof(BITMAPINFOHEADER));