diff options
author | Benjamin Otte <otte@gnome.org> | 2004-02-04 17:23:56 +0000 |
---|---|---|
committer | Benjamin Otte <otte@gnome.org> | 2004-02-04 17:23:56 +0000 |
commit | d7949a9ba8dcbad5a732aaeded37fbb34031a5fe (patch) | |
tree | 2834d5909f9b2da33d3e2486dded36c0d9c6e505 | |
parent | d1f51a277381a84644b6e6b526ee8c65b3ad4566 (diff) | |
download | gstreamer-plugins-base-d7949a9ba8dcbad5a732aaeded37fbb34031a5fe.tar.gz |
gst/sine/gstsinesrc.c: fix memleak by properly disposing sinesrc
Original commit message from CVS:
2004-02-04 Benjamin Otte <in7y118@public.uni-hamburg.de>
* gst/sine/gstsinesrc.c: (gst_sinesrc_class_init),
(gst_sinesrc_dispose):
fix memleak by properly disposing sinesrc
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | gst/sine/gstsinesrc.c | 13 |
2 files changed, 19 insertions, 0 deletions
@@ -1,3 +1,9 @@ +2004-02-04 Benjamin Otte <in7y118@public.uni-hamburg.de> + + * gst/sine/gstsinesrc.c: (gst_sinesrc_class_init), + (gst_sinesrc_dispose): + fix memleak by properly disposing sinesrc + 2004-02-04 Julien MOUTTE <julien@moutte.net> * gst-libs/gst/xoverlay/xoverlay.c: (gst_x_overlay_expose): diff --git a/gst/sine/gstsinesrc.c b/gst/sine/gstsinesrc.c index a047214e6..556a062db 100644 --- a/gst/sine/gstsinesrc.c +++ b/gst/sine/gstsinesrc.c @@ -72,6 +72,7 @@ GST_STATIC_PAD_TEMPLATE ( static void gst_sinesrc_class_init (GstSineSrcClass *klass); static void gst_sinesrc_base_init (GstSineSrcClass *klass); static void gst_sinesrc_init (GstSineSrc *src); +static void gst_sinesrc_dispose (GObject *object); static void gst_sinesrc_set_property (GObject *object, guint prop_id, const GValue *value, @@ -161,6 +162,7 @@ gst_sinesrc_class_init (GstSineSrcClass *klass) gobject_class->set_property = gst_sinesrc_set_property; gobject_class->get_property = gst_sinesrc_get_property; + gobject_class->dispose = gst_sinesrc_dispose; gstelement_class->change_state = gst_sinesrc_change_state; } @@ -215,6 +217,17 @@ gst_sinesrc_init (GstSineSrc *src) } +static void +gst_sinesrc_dispose (GObject *object) +{ + GstSineSrc *sinesrc = GST_SINESRC (object); + + g_free (sinesrc->table_data); + sinesrc->table_data = NULL; + + GST_CALL_PARENT (G_OBJECT_CLASS, dispose, (object)); +} + static GstCaps * gst_sinesrc_src_fixate (GstPad *pad, const GstCaps *caps) { |