changeset 30736:5a451be4f907

Actually use existing uninit() function in remove_logo filter.
author cehoyos
date Sat, 27 Feb 2010 22:32:25 +0000
parents 783071763328
children 8a9667eccbf7
files libmpcodecs/vf_remove_logo.c
diffstat 1 files changed, 20 insertions(+), 18 deletions(-) [+]
line wrap: on
line diff
--- a/libmpcodecs/vf_remove_logo.c	Sat Feb 27 21:50:59 2010 +0000
+++ b/libmpcodecs/vf_remove_logo.c	Sat Feb 27 22:32:25 2010 +0000
@@ -820,6 +820,25 @@
 }
 
 /**
+ * \brief Frees memory that our filter allocated.
+ *
+ * This is called at exit-time.
+ */
+static void uninit(vf_instance_t *vf)
+{
+  vf_priv_s *ctx = (vf_priv_s *)vf->priv;
+  /* Destroy our masks and images. */
+  destroy_pgm(ctx->filter);
+  destroy_pgm(ctx->half_size_filter);
+  destroy_masks(vf);
+
+  /* Destroy our private structure that had been used to store those masks and images. */
+  free(vf->priv);
+
+  return;
+}
+
+/**
  * \brief Initializes our filter.
  *
  * \param args The arguments passed in from the command line go here. This
@@ -831,6 +850,7 @@
 static int vf_open(vf_instance_t *vf, char *args)
 {
   vf->priv = safe_malloc(sizeof(vf_priv_s));
+  vf->uninit = uninit;
 
   /* Load our filter image. */
   if (args)
@@ -873,24 +893,6 @@
 }
 
 /**
- * \brief Frees memory that our filter allocated.
- *
- * This is called at exit-time.
- */
-static void uninit(vf_instance_t * vf)
-{
-  /* Destroy our masks and images. */
-  destroy_pgm(((vf_priv_s *)vf->priv)->filter);
-  destroy_pgm(((vf_priv_s *)vf->priv)->half_size_filter);
-  destroy_masks(vf);
-
-  /* Destroy our private structure that had been used to store those masks and images. */
-  free(vf->priv);
-
-  return;
-}
-
-/**
  * \brief Meta data about our filter.
  */
 const vf_info_t vf_info_remove_logo = {