]> git.sesse.net Git - vlc/commitdiff
video_filter_adjust: delete the callbacks before releasing p_sys.
authorRémi Duraffort <ivoire@videolan.org>
Wed, 25 Mar 2009 20:28:19 +0000 (21:28 +0100)
committerRémi Duraffort <ivoire@videolan.org>
Wed, 25 Mar 2009 20:29:03 +0000 (21:29 +0100)
modules/video_filter/adjust.c

index 721b1db61f59355c1a6259a6084b4b01522261f1..9375066f0bf28b2a383d91777a6a94a476bde352 100644 (file)
@@ -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 );
 }
 
 /*****************************************************************************