From daadaad81b0ed836d529014960853aded7cade7f Mon Sep 17 00:00:00 2001 From: Thomas Vander Stichele Date: Tue, 27 Sep 2005 18:33:48 +0000 Subject: [PATCH] gst/: remove now useless and leaky resurrection code in dispose Original commit message from CVS: * gst/gstbin.c: (gst_bin_dispose): * gst/gstelement.c: (gst_element_dispose): remove now useless and leaky resurrection code in dispose * gst/base/gstbasesrc.c: (gst_base_src_init): * gst/gstelementfactory.c: (gst_element_factory_create): * gst/gstobject.c: (gst_object_set_parent): add some debugging --- ChangeLog | 10 ++++++++++ gst/base/gstbasesrc.c | 7 ++++++- gst/gstbin.c | 3 --- gst/gstelement.c | 3 --- gst/gstelementfactory.c | 8 ++++---- gst/gstobject.c | 3 ++- libs/gst/base/gstbasesrc.c | 7 ++++++- 7 files changed, 28 insertions(+), 13 deletions(-) diff --git a/ChangeLog b/ChangeLog index af0a353..6dee031 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +2005-09-27 Thomas Vander Stichele + + * gst/gstbin.c: (gst_bin_dispose): + * gst/gstelement.c: (gst_element_dispose): + remove now useless and leaky resurrection code in dispose + * gst/base/gstbasesrc.c: (gst_base_src_init): + * gst/gstelementfactory.c: (gst_element_factory_create): + * gst/gstobject.c: (gst_object_set_parent): + add some debugging + 2005-09-27 Wim Taymans * docs/design/part-TODO.txt: diff --git a/gst/base/gstbasesrc.c b/gst/base/gstbasesrc.c index 6f94a46..5fe1a8a 100644 --- a/gst/base/gstbasesrc.c +++ b/gst/base/gstbasesrc.c @@ -189,8 +189,10 @@ gst_base_src_init (GstBaseSrc * basesrc, gpointer g_class) gst_element_class_get_pad_template (GST_ELEMENT_CLASS (g_class), "src"); g_return_if_fail (pad_template != NULL); + GST_DEBUG_OBJECT (basesrc, "creating src pad"); pad = gst_pad_new_from_template (pad_template, "src"); + GST_DEBUG_OBJECT (basesrc, "setting functions on src pad"); gst_pad_set_activatepush_function (pad, gst_base_src_activate_push); gst_pad_set_activatepull_function (pad, gst_base_src_activate_pull); gst_pad_set_event_function (pad, gst_base_src_event_handler); @@ -200,8 +202,9 @@ gst_base_src_init (GstBaseSrc * basesrc, gpointer g_class) gst_pad_set_getcaps_function (pad, gst_base_src_getcaps); gst_pad_set_setcaps_function (pad, gst_base_src_setcaps); - /* hold ref to pad */ + /* hold pointer to pad */ basesrc->srcpad = pad; + GST_DEBUG_OBJECT (basesrc, "adding src pad"); gst_element_add_pad (GST_ELEMENT (basesrc), pad); basesrc->segment_start = -1; @@ -211,6 +214,8 @@ gst_base_src_init (GstBaseSrc * basesrc, gpointer g_class) basesrc->clock_id = NULL; GST_FLAG_UNSET (basesrc, GST_BASE_SRC_STARTED); + + GST_DEBUG_OBJECT (basesrc, "init done"); } static void diff --git a/gst/gstbin.c b/gst/gstbin.c index a580518..4b00248 100644 --- a/gst/gstbin.c +++ b/gst/gstbin.c @@ -1449,9 +1449,6 @@ gst_bin_dispose (GObject * object) GST_CAT_DEBUG_OBJECT (GST_CAT_REFCOUNTING, object, "dispose"); - /* ref to not hit 0 again */ - gst_object_ref (object); - g_list_free (bin->eosed); bin->eosed = NULL; gst_object_unref (bin->child_bus); diff --git a/gst/gstelement.c b/gst/gstelement.c index 58f2343..f32d0cf 100644 --- a/gst/gstelement.c +++ b/gst/gstelement.c @@ -2091,9 +2091,6 @@ gst_element_dispose (GObject * object) GST_CAT_INFO_OBJECT (GST_CAT_REFCOUNTING, element, "dispose"); - /* ref so we don't hit 0 again */ - gst_object_ref (object); - /* first we break all our links with the outside */ while (element->pads) { gst_element_remove_pad (element, GST_PAD_CAST (element->pads->data)); diff --git a/gst/gstelementfactory.c b/gst/gstelementfactory.c index 3df907e..a60dbce 100644 --- a/gst/gstelementfactory.c +++ b/gst/gstelementfactory.c @@ -367,10 +367,10 @@ gst_element_factory_create (GstElementFactory * factory, const gchar * name) } if (name) - GST_INFO ("creating \"%s\" named \"%s\"", GST_PLUGIN_FEATURE_NAME (factory), - GST_STR_NULL (name)); + GST_INFO ("creating element \"%s\" named \"%s\"", + GST_PLUGIN_FEATURE_NAME (factory), GST_STR_NULL (name)); else - GST_INFO ("creating \"%s\"", GST_PLUGIN_FEATURE_NAME (factory)); + GST_INFO ("creating element \"%s\"", GST_PLUGIN_FEATURE_NAME (factory)); #if 0 if (factory->type == 0) { @@ -397,7 +397,7 @@ gst_element_factory_create (GstElementFactory * factory, const gchar * name) if (name) gst_object_set_name (GST_OBJECT (element), name); - GST_DEBUG ("created \"%s\"", GST_PLUGIN_FEATURE_NAME (factory)); + GST_DEBUG ("created element \"%s\"", GST_PLUGIN_FEATURE_NAME (factory)); return element; } diff --git a/gst/gstobject.c b/gst/gstobject.c index 851d114..c4f9d30 100644 --- a/gst/gstobject.c +++ b/gst/gstobject.c @@ -861,7 +861,8 @@ gst_object_set_parent (GstObject * object, GstObject * parent) g_return_val_if_fail (GST_IS_OBJECT (parent), FALSE); g_return_val_if_fail (object != parent, FALSE); - GST_CAT_LOG_OBJECT (GST_CAT_REFCOUNTING, object, "set parent (ref and sink)"); + GST_CAT_DEBUG_OBJECT (GST_CAT_REFCOUNTING, object, + "set parent (ref and sink)"); GST_LOCK (object); if (G_UNLIKELY (object->parent != NULL)) diff --git a/libs/gst/base/gstbasesrc.c b/libs/gst/base/gstbasesrc.c index 6f94a46..5fe1a8a 100644 --- a/libs/gst/base/gstbasesrc.c +++ b/libs/gst/base/gstbasesrc.c @@ -189,8 +189,10 @@ gst_base_src_init (GstBaseSrc * basesrc, gpointer g_class) gst_element_class_get_pad_template (GST_ELEMENT_CLASS (g_class), "src"); g_return_if_fail (pad_template != NULL); + GST_DEBUG_OBJECT (basesrc, "creating src pad"); pad = gst_pad_new_from_template (pad_template, "src"); + GST_DEBUG_OBJECT (basesrc, "setting functions on src pad"); gst_pad_set_activatepush_function (pad, gst_base_src_activate_push); gst_pad_set_activatepull_function (pad, gst_base_src_activate_pull); gst_pad_set_event_function (pad, gst_base_src_event_handler); @@ -200,8 +202,9 @@ gst_base_src_init (GstBaseSrc * basesrc, gpointer g_class) gst_pad_set_getcaps_function (pad, gst_base_src_getcaps); gst_pad_set_setcaps_function (pad, gst_base_src_setcaps); - /* hold ref to pad */ + /* hold pointer to pad */ basesrc->srcpad = pad; + GST_DEBUG_OBJECT (basesrc, "adding src pad"); gst_element_add_pad (GST_ELEMENT (basesrc), pad); basesrc->segment_start = -1; @@ -211,6 +214,8 @@ gst_base_src_init (GstBaseSrc * basesrc, gpointer g_class) basesrc->clock_id = NULL; GST_FLAG_UNSET (basesrc, GST_BASE_SRC_STARTED); + + GST_DEBUG_OBJECT (basesrc, "init done"); } static void -- 2.7.4