summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog7
m---------common0
-rw-r--r--gst/playback/gsturidecodebin.c4
-rw-r--r--sys/v4l/gstv4lsrc.c8
4 files changed, 17 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index b1e0bfd6..b2625a23 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
2008-12-12 Edward Hervey <edward.hervey@collabora.co.uk>
+ * gst/playback/gsturidecodebin.c: (gst_uri_decode_bin_finalize):
+ Free the factory array when finalizing.
+ * sys/v4l/gstv4lsrc.c: (gst_v4lsrc_base_init):
+ Use a GstStaticPadTemplate since the src pad caps are fixed.
+
+2008-12-12 Edward Hervey <edward.hervey@collabora.co.uk>
+
* ext/vorbis/vorbisenc.c: (gst_vorbis_enc_base_init),
(gst_vorbis_enc_init):
Make vorbisenc's pad template behave like vorbisdec's. Fixes a leak with
diff --git a/common b/common
-Subproject a8728f3f810904c94f0b6678a7633d551514f33
+Subproject f811de62e9cea6e3d4174a0b172733b2c7952c1
diff --git a/gst/playback/gsturidecodebin.c b/gst/playback/gsturidecodebin.c
index e5ea264b..034d7288 100644
--- a/gst/playback/gsturidecodebin.c
+++ b/gst/playback/gsturidecodebin.c
@@ -432,6 +432,10 @@ gst_uri_decode_bin_finalize (GObject * obj)
g_mutex_free (dec->lock);
g_free (dec->uri);
g_free (dec->encoding);
+ if (dec->factories) {
+ g_value_array_free (dec->factories);
+ dec->factories = NULL;
+ }
G_OBJECT_CLASS (parent_class)->finalize (obj);
}
diff --git a/sys/v4l/gstv4lsrc.c b/sys/v4l/gstv4lsrc.c
index 2c190090..0bba38bb 100644
--- a/sys/v4l/gstv4lsrc.c
+++ b/sys/v4l/gstv4lsrc.c
@@ -53,6 +53,11 @@ enum
GST_BOILERPLATE (GstV4lSrc, gst_v4lsrc, GstV4lElement, GST_TYPE_V4LELEMENT);
+static GstStaticPadTemplate v4l_src_template = GST_STATIC_PAD_TEMPLATE ("src",
+ GST_PAD_SRC,
+ GST_PAD_ALWAYS,
+ GST_STATIC_CAPS ("ANY")
+ );
/* basesrc methods */
static gboolean gst_v4lsrc_start (GstBaseSrc * src);
@@ -77,8 +82,7 @@ gst_v4lsrc_base_init (gpointer g_class)
gst_element_class_set_details (gstelement_class, &gst_v4lsrc_details);
gst_element_class_add_pad_template (gstelement_class,
- gst_pad_template_new ("src", GST_PAD_SRC, GST_PAD_ALWAYS,
- gst_caps_new_any ()));
+ gst_static_pad_template_get (&v4l_src_template));
}
static void