summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Dröge <slomo@circular-chaos.org>2008-02-11 13:34:47 +0000
committerSebastian Dröge <slomo@circular-chaos.org>2008-02-11 13:34:47 +0000
commitfc50684825ca09995884d4453c2fedd068ea882c (patch)
tree130cb1177efb3af7c37b40c755e0f665cb3bed5c
parent8142dfd7120422cb1fd5e85357c7e63dc80e3a2d (diff)
downloadgst-plugins-bad-fc50684825ca09995884d4453c2fedd068ea882c.tar.gz
gst-plugins-bad-fc50684825ca09995884d4453c2fedd068ea882c.tar.bz2
gst-plugins-bad-fc50684825ca09995884d4453c2fedd068ea882c.zip
sys/fbdev/gstfbdevsink.c: Free the device string in finalize. Fixes bug #515722.
Original commit message from CVS: * sys/fbdev/gstfbdevsink.c: (gst_fbdevsink_class_init), (gst_fbdevsink_finalize): Free the device string in finalize. Fixes bug #515722.
-rw-r--r--ChangeLog6
-rw-r--r--sys/fbdev/gstfbdevsink.c12
2 files changed, 18 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index d23a8ebf..0c86732c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
2008-02-11 Sebastian Dröge <slomo@circular-chaos.org>
+ * sys/fbdev/gstfbdevsink.c: (gst_fbdevsink_class_init),
+ (gst_fbdevsink_finalize):
+ Free the device string in finalize. Fixes bug #515722.
+
+2008-02-11 Sebastian Dröge <slomo@circular-chaos.org>
+
* ext/xvid/gstxvidenc.c: (gst_xvidenc_init):
Unset GValues after using them. Fixes bug #515720.
diff --git a/sys/fbdev/gstfbdevsink.c b/sys/fbdev/gstfbdevsink.c
index 830e919a..3f5c5026 100644
--- a/sys/fbdev/gstfbdevsink.c
+++ b/sys/fbdev/gstfbdevsink.c
@@ -64,6 +64,7 @@ static GstFlowReturn gst_fbdevsink_render (GstBaseSink * bsink,
static gboolean gst_fbdevsink_start (GstBaseSink * bsink);
static gboolean gst_fbdevsink_stop (GstBaseSink * bsink);
+static void gst_fbdevsink_finalize (GObject * object);
static void gst_fbdevsink_set_property (GObject * object,
guint prop_id, const GValue * value, GParamSpec * pspec);
static void gst_fbdevsink_get_property (GObject * object,
@@ -391,6 +392,7 @@ gst_fbdevsink_class_init (GstFBDEVSinkClass * klass)
gobject_class->set_property = gst_fbdevsink_set_property;
gobject_class->get_property = gst_fbdevsink_get_property;
+ gobject_class->finalize = gst_fbdevsink_finalize;
gstelement_class->change_state =
GST_DEBUG_FUNCPTR (gst_fbdevsink_change_state);
@@ -409,6 +411,16 @@ gst_fbdevsink_class_init (GstFBDEVSinkClass * klass)
}
+static void
+gst_fbdevsink_finalize (GObject * object)
+{
+ GstFBDEVSink *fbdevsink = GST_FBDEVSINK (object);
+
+ g_free (fbdevsink->device);
+
+ G_OBJECT_CLASS (parent_class)->finalize (object);
+}
+
GType
gst_fbdevsink_get_type (void)
{