linsyssdi: fix leaks
authorVincent Penquerc'h <vincent.penquerch@collabora.co.uk>
Fri, 13 Jan 2012 10:32:59 +0000 (10:32 +0000)
committerVincent Penquerc'h <vincent.penquerch@collabora.co.uk>
Fri, 13 Jan 2012 10:32:59 +0000 (10:32 +0000)
sys/linsys/gstlinsyssdisink.c
sys/linsys/gstlinsyssdisrc.c

index e4260c0..28b64b2 100644 (file)
@@ -196,9 +196,14 @@ gst_linsys_sdi_sink_get_property (GObject * object, guint property_id,
 void
 gst_linsys_sdi_sink_dispose (GObject * object)
 {
+  GstLinsysSdiSink *linsyssdisink;
+
   g_return_if_fail (GST_IS_LINSYS_SDI_SINK (object));
+  linsyssdisink = GST_LINSYS_SDI_SINK (object);
 
   /* clean up as possible.  may be called multiple times */
+  g_free (linsyssdisink->device);
+  linsyssdisink->device = NULL;
 
   G_OBJECT_CLASS (parent_class)->dispose (object);
 }
index 467c54c..a9732f5 100644 (file)
@@ -212,9 +212,12 @@ gst_linsys_sdi_src_get_property (GObject * object, guint property_id,
 void
 gst_linsys_sdi_src_dispose (GObject * object)
 {
-  g_return_if_fail (GST_IS_LINSYS_SDI_SRC (object));
+  GstLinsysSdiSrc *linsyssdisrc = GST_LINSYS_SDI_SRC (object);
+  g_return_if_fail (linsyssdisrc != NULL);
 
   /* clean up as possible.  may be called multiple times */
+  g_free (linsyssdisrc->device);
+  linsyssdisrc->device = NULL;
 
   G_OBJECT_CLASS (parent_class)->dispose (object);
 }