summaryrefslogtreecommitdiffstats
path: root/gst/level
diff options
context:
space:
mode:
authorMichael Smith <msmith@xiph.org>2006-01-10 12:38:59 +0000
committerMichael Smith <msmith@xiph.org>2006-01-10 12:38:59 +0000
commit8a44792254d5e124cf70398bc65ff93b05e164aa (patch)
treecabca3c4669a3fc9a9a7505408e8790a73682a70 /gst/level
parent9b94e38300ef023c12e66aa4df0efa1a8911a92c (diff)
gst/level/gstlevel.c: Don't leak filter arrays.
Original commit message from CVS: * gst/level/gstlevel.c: (gst_level_class_init), (gst_level_dispose): Don't leak filter arrays.
Diffstat (limited to 'gst/level')
-rw-r--r--gst/level/gstlevel.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/gst/level/gstlevel.c b/gst/level/gstlevel.c
index 6bb53ddc..26afb08d 100644
--- a/gst/level/gstlevel.c
+++ b/gst/level/gstlevel.c
@@ -133,6 +133,7 @@ static void gst_level_set_property (GObject * object, guint prop_id,
const GValue * value, GParamSpec * pspec);
static void gst_level_get_property (GObject * object, guint prop_id,
GValue * value, GParamSpec * pspec);
+static void gst_level_dispose (GObject * obj);
static gboolean gst_level_set_caps (GstBaseTransform * trans, GstCaps * in,
GstCaps * out);
@@ -163,6 +164,7 @@ gst_level_class_init (GstLevelClass * klass)
gobject_class->set_property = gst_level_set_property;
gobject_class->get_property = gst_level_get_property;
+ gobject_class->dispose = gst_level_dispose;
g_object_class_install_property (G_OBJECT_CLASS (klass), PROP_SIGNAL_LEVEL,
g_param_spec_boolean ("message", "mesage",
@@ -206,6 +208,28 @@ gst_level_init (GstLevel * filter, GstLevelClass * g_class)
}
static void
+gst_level_dispose (GObject * obj)
+{
+ GstLevel *filter = GST_LEVEL (obj);
+
+ g_free (filter->CS);
+ g_free (filter->peak);
+ g_free (filter->last_peak);
+ g_free (filter->decay_peak);
+ g_free (filter->decay_peak_base);
+ g_free (filter->decay_peak_age);
+
+ filter->CS = NULL;
+ filter->peak = NULL;
+ filter->last_peak = NULL;
+ filter->decay_peak = NULL;
+ filter->decay_peak_base = NULL;
+ filter->decay_peak_age = NULL;
+
+ G_OBJECT_CLASS (parent_class)->dispose (obj);
+}
+
+static void
gst_level_set_property (GObject * object, guint prop_id,
const GValue * value, GParamSpec * pspec)
{