[vlc-devel] commit: video_filter_adjust: delete the callbacks before releasing p_sys. ( Rémi Duraffort )

git version control git at videolan.org
Wed Mar 25 21:37:18 CET 2009


vlc | branch: master | Rémi Duraffort <ivoire at videolan.org> | Wed Mar 25 21:28:19 2009 +0100| [1b82d1b7e3358b3c487a6b3d3c7e0e42d54d52c3] | committer: Rémi Duraffort 

video_filter_adjust: delete the callbacks before releasing p_sys.

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1b82d1b7e3358b3c487a6b3d3c7e0e42d54d52c3
---

 modules/video_filter/adjust.c |   12 +++++++++++-
 1 files changed, 11 insertions(+), 1 deletions(-)

diff --git a/modules/video_filter/adjust.c b/modules/video_filter/adjust.c
index 721b1db..9375066 100644
--- a/modules/video_filter/adjust.c
+++ b/modules/video_filter/adjust.c
@@ -189,7 +189,17 @@ static int Create( vlc_object_t *p_this )
 static void Destroy( vlc_object_t *p_this )
 {
     filter_t *p_filter = (filter_t *)p_this;
-    free( p_filter->p_sys );
+    filter_sys_t *p_sys = p_filter->p_sys;
+
+    var_DelCallback( p_filter, "contrast",   AdjustCallback, p_sys );
+    var_DelCallback( p_filter, "brightness", AdjustCallback, p_sys );
+    var_DelCallback( p_filter, "hue",        AdjustCallback, p_sys );
+    var_DelCallback( p_filter, "saturation", AdjustCallback, p_sys );
+    var_DelCallback( p_filter, "gamma",      AdjustCallback, p_sys );
+    var_DelCallback( p_filter, "brightness-threshold",
+                                             AdjustCallback, p_sys );
+
+    free( p_sys );
 }
 
 /*****************************************************************************




More information about the vlc-devel mailing list