summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--sys/oss/gstossmixerelement.c12
2 files changed, 18 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index dc538abb..dad0a66b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
2006-08-16 Tim-Philipp Müller <tim at centricular dot net>
+ * sys/oss/gstossmixerelement.c: (gst_oss_mixer_element_class_init),
+ (gst_oss_mixer_element_finalize):
+ Don't leak device string.
+
+2006-08-16 Tim-Philipp Müller <tim at centricular dot net>
+
* configure.ac:
Require CVS of GStreamer core and -base (for
GST_TAG_EXTENDED_COMMENT and gst_tag_parse_extended_comment()).
diff --git a/sys/oss/gstossmixerelement.c b/sys/oss/gstossmixerelement.c
index 34e6904f..3ca3abb5 100644
--- a/sys/oss/gstossmixerelement.c
+++ b/sys/oss/gstossmixerelement.c
@@ -75,6 +75,7 @@ static void gst_oss_mixer_element_set_property (GObject * object,
guint prop_id, const GValue * value, GParamSpec * pspec);
static void gst_oss_mixer_element_get_property (GObject * object,
guint prop_id, GValue * value, GParamSpec * pspec);
+static void gst_oss_mixer_element_finalize (GObject * object);
static void
gst_oss_mixer_element_base_init (gpointer klass)
@@ -92,6 +93,7 @@ gst_oss_mixer_element_class_init (GstOssMixerElementClass * klass)
element_class = (GstElementClass *) klass;
gobject_class = (GObjectClass *) klass;
+ gobject_class->finalize = gst_oss_mixer_element_finalize;
gobject_class->set_property = gst_oss_mixer_element_set_property;
gobject_class->get_property = gst_oss_mixer_element_get_property;
@@ -117,6 +119,16 @@ gst_oss_mixer_element_class_init (GstOssMixerElementClass * klass)
}
static void
+gst_oss_mixer_element_finalize (GObject * obj)
+{
+ GstOssMixerElement *this = GST_OSS_MIXER_ELEMENT (obj);
+
+ g_free (this->device);
+
+ G_OBJECT_CLASS (parent_class)->finalize (obj);
+}
+
+static void
gst_oss_mixer_element_init (GstOssMixerElement * this,
GstOssMixerElementClass * g_class)
{