From 48a4bc909ab4c488d1de553004a0a6a5f84dd8c0 Mon Sep 17 00:00:00 2001 From: Stefan Kost Date: Mon, 26 Nov 2007 10:08:20 +0000 Subject: gst/spectrum/gstspectrum.c: Use dispose and finalize. Dispose can be called multiple times. Original commit message from CVS: * gst/spectrum/gstspectrum.c: Use dispose and finalize. Dispose can be called multiple times. --- gst/spectrum/gstspectrum.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'gst/spectrum') diff --git a/gst/spectrum/gstspectrum.c b/gst/spectrum/gstspectrum.c index 85e0540f..1382f260 100644 --- a/gst/spectrum/gstspectrum.c +++ b/gst/spectrum/gstspectrum.c @@ -136,6 +136,7 @@ GST_BOILERPLATE (GstSpectrum, gst_spectrum, GstAudioFilter, GST_TYPE_AUDIO_FILTER); static void gst_spectrum_dispose (GObject * object); +static void gst_spectrum_finalize (GObject * object); static void gst_spectrum_set_property (GObject * object, guint prop_id, const GValue * value, GParamSpec * pspec); static void gst_spectrum_get_property (GObject * object, guint prop_id, @@ -177,6 +178,7 @@ gst_spectrum_class_init (GstSpectrumClass * klass) gobject_class->set_property = gst_spectrum_set_property; gobject_class->get_property = gst_spectrum_get_property; gobject_class->dispose = gst_spectrum_dispose; + gobject_class->finalize = gst_spectrum_finalize; trans_class->start = GST_DEBUG_FUNCPTR (gst_spectrum_start); trans_class->stop = GST_DEBUG_FUNCPTR (gst_spectrum_stop); @@ -245,6 +247,14 @@ gst_spectrum_dispose (GObject * object) spectrum->adapter = NULL; } + G_OBJECT_CLASS (parent_class)->dispose (object); +} + +static void +gst_spectrum_finalize (GObject * object) +{ + GstSpectrum *spectrum = GST_SPECTRUM (object); + g_free (spectrum->in); if (spectrum->fft_free_func) { spectrum->fft_free_func (spectrum->fft_ctx); @@ -260,7 +270,7 @@ gst_spectrum_dispose (GObject * object) spectrum->spect_phase = NULL; spectrum->freqdata = NULL; - G_OBJECT_CLASS (parent_class)->dispose (object); + G_OBJECT_CLASS (parent_class)->finalize (object); } static void -- cgit