+2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
+
+ * gst/base/gstbasesrc.c: (gst_base_src_class_init),
+ (gst_base_src_finalize):
+ add finalize method and clean up properly
+ * gst/gstpipeline.c: (gst_pipeline_dispose):
+ add debug
+
2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
* check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
static void gst_base_src_base_init (gpointer g_class);
static void gst_base_src_class_init (GstBaseSrcClass * klass);
static void gst_base_src_init (GstBaseSrc * src, gpointer g_class);
+static void gst_base_src_finalize (GObject * object);
+
GType
gst_base_src_get_type (void)
parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
+ gobject_class->finalize = GST_DEBUG_FUNCPTR (gst_base_src_finalize);
gobject_class->set_property = GST_DEBUG_FUNCPTR (gst_base_src_set_property);
gobject_class->get_property = GST_DEBUG_FUNCPTR (gst_base_src_get_property);
GST_FLAG_UNSET (basesrc, GST_BASE_SRC_STARTED);
}
+static void
+gst_base_src_finalize (GObject * object)
+{
+ GstBaseSrc *basesrc;
+
+ basesrc = GST_BASE_SRC (object);
+
+ g_mutex_free (basesrc->live_lock);
+ g_cond_free (basesrc->live_cond);
+
+ G_OBJECT_CLASS (parent_class)->finalize (object);
+}
+
void
gst_base_src_set_live (GstBaseSrc * src, gboolean live)
{
{
GstPipeline *pipeline = GST_PIPELINE (object);
+ GST_CAT_DEBUG_OBJECT (GST_CAT_REFCOUNTING, pipeline, "dispose");
+
gst_scheduler_reset (GST_ELEMENT_SCHEDULER (object));
gst_element_set_scheduler (GST_ELEMENT (pipeline), NULL);
gst_object_replace ((GstObject **) & pipeline->fixed_clock, NULL);
static void gst_base_src_base_init (gpointer g_class);
static void gst_base_src_class_init (GstBaseSrcClass * klass);
static void gst_base_src_init (GstBaseSrc * src, gpointer g_class);
+static void gst_base_src_finalize (GObject * object);
+
GType
gst_base_src_get_type (void)
parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
+ gobject_class->finalize = GST_DEBUG_FUNCPTR (gst_base_src_finalize);
gobject_class->set_property = GST_DEBUG_FUNCPTR (gst_base_src_set_property);
gobject_class->get_property = GST_DEBUG_FUNCPTR (gst_base_src_get_property);
GST_FLAG_UNSET (basesrc, GST_BASE_SRC_STARTED);
}
+static void
+gst_base_src_finalize (GObject * object)
+{
+ GstBaseSrc *basesrc;
+
+ basesrc = GST_BASE_SRC (object);
+
+ g_mutex_free (basesrc->live_lock);
+ g_cond_free (basesrc->live_cond);
+
+ G_OBJECT_CLASS (parent_class)->finalize (object);
+}
+
void
gst_base_src_set_live (GstBaseSrc * src, gboolean live)
{