summaryrefslogtreecommitdiffstats
path: root/sys
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
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')
-rw-r--r--sys/dshowsrcwrapper/gstdshowaudiosrc.c2
-rw-r--r--sys/dshowsrcwrapper/gstdshowvideosrc.c8
-rw-r--r--sys/vcd/vcdsrc.c13
3 files changed, 20 insertions, 3 deletions
diff --git a/sys/dshowsrcwrapper/gstdshowaudiosrc.c b/sys/dshowsrcwrapper/gstdshowaudiosrc.c
index 87c12789..4d960e64 100644
--- a/sys/dshowsrcwrapper/gstdshowaudiosrc.c
+++ b/sys/dshowsrcwrapper/gstdshowaudiosrc.c
@@ -239,6 +239,8 @@ gst_dshowaudiosrc_dispose (GObject * gobject)
}
CoUninitialize ();
+
+ G_OBJECT_CLASS (parent_class)->dispose (object);
}
diff --git a/sys/dshowsrcwrapper/gstdshowvideosrc.c b/sys/dshowsrcwrapper/gstdshowvideosrc.c
index 38b779dd..72fbc58b 100644
--- a/sys/dshowsrcwrapper/gstdshowvideosrc.c
+++ b/sys/dshowsrcwrapper/gstdshowvideosrc.c
@@ -35,9 +35,9 @@ GST_DEBUG_CATEGORY_STATIC (dshowvideosrc_debug);
#define GST_CAT_DEFAULT dshowvideosrc_debug
const GUID MEDIASUBTYPE_I420
- =
- { 0x30323449, 0x0000, 0x0010, {0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B,
- 0x71} };
+ = { 0x30323449, 0x0000, 0x0010, {0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B,
+ 0x71}
+};
static GstStaticPadTemplate src_template = GST_STATIC_PAD_TEMPLATE ("src",
GST_PAD_SRC,
@@ -245,6 +245,8 @@ gst_dshowvideosrc_dispose (GObject * gobject)
}
CoUninitialize ();
+
+ G_OBJECT_CLASS (parent_class)->dispose (object);
}
static gboolean
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)