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.
diff --git a/ChangeLog b/ChangeLog
index d23a8eb..0c86732 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 830e919..3f5c502 100644
--- a/sys/fbdev/gstfbdevsink.c
+++ b/sys/fbdev/gstfbdevsink.c
@@ -64,6 +64,7 @@
 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 @@
 
   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 @@
 
 }
 
+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)
 {