diff options
author | Edward Hervey <bilboed@bilboed.com> | 2010-09-06 15:16:16 +0200 |
---|---|---|
committer | Edward Hervey <bilboed@bilboed.com> | 2010-09-09 18:40:08 +0200 |
commit | 06738c15b77531ca53874df2b5d7401c1b57ea73 (patch) | |
tree | d129769152dc4a832baf9f1bec05bfcbe0dec49f | |
parent | 62d40fa0dbba1363c0f267e4f8f5d97201003947 (diff) |
gstobject: avoid string creation when not needed
-rw-r--r-- | gst/gstobject.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/gst/gstobject.c b/gst/gstobject.c index dabb894e0..02e7b4526 100644 --- a/gst/gstobject.c +++ b/gst/gstobject.c @@ -516,15 +516,22 @@ gst_object_dispatch_properties_changed (GObject * object, { GstObject *gst_object, *parent, *old_parent; guint i; - gchar *name; +#ifndef GST_DISABLE_GST_DEBUG + gchar *name = NULL; const gchar *debug_name; +#endif /* do the standard dispatching */ parent_class->dispatch_properties_changed (object, n_pspecs, pspecs); gst_object = GST_OBJECT_CAST (object); - name = gst_object_get_name (gst_object); - debug_name = GST_STR_NULL (name); +#ifndef GST_DISABLE_GST_DEBUG + if (G_UNLIKELY (__gst_debug_min >= GST_LEVEL_LOG)) { + name = gst_object_get_name (gst_object); + debug_name = GST_STR_NULL (name); + } else + debug_name = ""; +#endif /* now let the parent dispatch those, too */ parent = gst_object_get_parent (gst_object); @@ -541,7 +548,9 @@ gst_object_dispatch_properties_changed (GObject * object, parent = gst_object_get_parent (old_parent); gst_object_unref (old_parent); } +#ifndef GST_DISABLE_GST_DEBUG g_free (name); +#endif } /** |