diff options
author | Jan Schmidt <thaytan@mad.scientist.com> | 2006-01-27 01:43:07 +0000 |
---|---|---|
committer | Jan Schmidt <thaytan@mad.scientist.com> | 2006-01-27 01:43:07 +0000 |
commit | 6b789d2dd197c127d579673ea9ba4faaf60accf3 (patch) | |
tree | 8318c01d24f5582e964cb1d28ef4bebc3804424c /sys/oss | |
parent | 7814b56eeef4806e02ea94cf3b1e85c602cc6904 (diff) |
sys/oss/gstosssink.c: Free the device name string when finalised.
Original commit message from CVS:
* sys/oss/gstosssink.c: (gst_oss_sink_class_init),
(gst_oss_sink_init), (gst_oss_sink_finalise):
Free the device name string when finalised.
Diffstat (limited to 'sys/oss')
-rw-r--r-- | sys/oss/gstosssink.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/sys/oss/gstosssink.c b/sys/oss/gstosssink.c index 02e217e0..29e2e3f2 100644 --- a/sys/oss/gstosssink.c +++ b/sys/oss/gstosssink.c @@ -59,7 +59,9 @@ GST_ELEMENT_DETAILS ("Audio Sink (OSS)", static void gst_oss_sink_base_init (gpointer g_class); static void gst_oss_sink_class_init (GstOssSinkClass * klass); static void gst_oss_sink_init (GstOssSink * osssink); + static void gst_oss_sink_dispose (GObject * object); +static void gst_oss_sink_finalise (GObject * object); static void gst_oss_sink_get_property (GObject * object, guint prop_id, GValue * value, GParamSpec * pspec); @@ -179,6 +181,7 @@ gst_oss_sink_class_init (GstOssSinkClass * klass) parent_class = g_type_class_ref (GST_TYPE_BASE_AUDIO_SINK); gobject_class->dispose = GST_DEBUG_FUNCPTR (gst_oss_sink_dispose); + gobject_class->finalize = GST_DEBUG_FUNCPTR (gst_oss_sink_finalise); gobject_class->get_property = GST_DEBUG_FUNCPTR (gst_oss_sink_get_property); gobject_class->set_property = GST_DEBUG_FUNCPTR (gst_oss_sink_set_property); @@ -202,11 +205,19 @@ gst_oss_sink_init (GstOssSink * osssink) { GST_DEBUG ("initializing osssink"); - osssink->device = g_strdup (DEFAULT_DEVICE);; + osssink->device = g_strdup (DEFAULT_DEVICE); osssink->fd = -1; } static void +gst_oss_sink_finalise (GObject * object) +{ + GstOssSink *osssink = GST_OSSSINK (object); + + g_free (osssink->device); +} + +static void gst_oss_sink_set_property (GObject * object, guint prop_id, const GValue * value, GParamSpec * pspec) { |