summaryrefslogtreecommitdiffstats
path: root/sys/vcd
diff options
context:
space:
mode:
authorStefan Kost <ensonic@users.sourceforge.net>2007-09-24 10:53:37 +0000
committerStefan Kost <ensonic@users.sourceforge.net>2007-09-24 10:53:37 +0000
commit1af510f8d54ddeb58f1c8e6db3f4fe45d21dd026 (patch)
tree5562881810015d176f8ed198f09a9f1f2dc8e602 /sys/vcd
parent9525b8056fb7dbd279b4622c56e84beca56c0ad4 (diff)
downloadgst-plugins-bad-1af510f8d54ddeb58f1c8e6db3f4fe45d21dd026.tar.gz
gst-plugins-bad-1af510f8d54ddeb58f1c8e6db3f4fe45d21dd026.tar.bz2
gst-plugins-bad-1af510f8d54ddeb58f1c8e6db3f4fe45d21dd026.zip
Massive leak fixing, plus code cleanups.
Original commit message from CVS: * ext/audioresample/gstaudioresample.c: * ext/x264/gstx264enc.c: * gst/dvdspu/gstdvdspu.c: * gst/dvdspu/gstdvdspu.h: * gst/festival/gstfestival.c: * gst/h264parse/gsth264parse.c: * gst/mpegtsparse/mpegtspacketizer.c: * gst/mpegtsparse/mpegtsparse.c: * gst/multifile/gstmultifilesink.c: * gst/multifile/gstmultifilesrc.c: * gst/nuvdemux/gstnuvdemux.c: * sys/dshowsrcwrapper/gstdshowaudiosrc.c: * sys/dshowsrcwrapper/gstdshowvideosrc.c: * sys/vcd/vcdsrc.c: Massive leak fixing, plus code cleanups.
Diffstat (limited to 'sys/vcd')
-rw-r--r--sys/vcd/vcdsrc.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/sys/vcd/vcdsrc.c b/sys/vcd/vcdsrc.c
index b48e307b..0ccebc33 100644
--- a/sys/vcd/vcdsrc.c
+++ b/sys/vcd/vcdsrc.c
@@ -83,6 +83,8 @@ gst_vcdsrc_setup_interfaces (GType type)
GST_BOILERPLATE_FULL (GstVCDSrc, gst_vcdsrc, GstPushSrc, GST_TYPE_PUSH_SRC,
gst_vcdsrc_setup_interfaces);
+static void gst_vcdsrc_finalize (GObject * object);
+
static void gst_vcdsrc_set_property (GObject * object, guint prop_id,
const GValue * value, GParamSpec * pspec);
static void gst_vcdsrc_get_property (GObject * object, guint prop_id,
@@ -116,6 +118,7 @@ gst_vcdsrc_class_init (GstVCDSrcClass * klass)
gobject_class->set_property = gst_vcdsrc_set_property;
gobject_class->get_property = gst_vcdsrc_get_property;
+ gobject_class->finalize = gst_vcdsrc_finalize;
g_object_class_install_property (gobject_class, PROP_DEVICE,
g_param_spec_string ("device", "Device",
@@ -149,6 +152,16 @@ gst_vcdsrc_init (GstVCDSrc * vcdsrc, GstVCDSrcClass * klass)
vcdsrc->max_errors = 16;
}
+static void
+gst_vcdsrc_finalize (GObject * object)
+{
+ GstVCDSrc *vcdsrc = GST_VCDSRC (object);
+
+ g_free (vcdsrc->device);
+
+ G_OBJECT_CLASS (parent_class)->finalize (object);
+}
+
static inline guint64
gst_vcdsrc_msf (GstVCDSrc * vcdsrc, gint track)