From: Sebastian Dröge Date: Sat, 2 Feb 2008 06:48:37 +0000 (+0000) Subject: tools/gst-inspect.c: Fix a few memory leaks. X-Git-Tag: RELEASE-0_10_18~62 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=d7a94887b55eef5040943ca4adf26b64ebfe6afa;p=platform%2Fupstream%2Fgstreamer.git tools/gst-inspect.c: Fix a few memory leaks. Original commit message from CVS: * tools/gst-inspect.c: (print_interfaces), (print_element_properties_info), (print_pad_info), (print_signal_info), (print_element_info): Fix a few memory leaks. --- diff --git a/ChangeLog b/ChangeLog index a99639a..c009636 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2008-02-02 Sebastian Dröge + + * tools/gst-inspect.c: (print_interfaces), + (print_element_properties_info), (print_pad_info), + (print_signal_info), (print_element_info): + Fix a few memory leaks. + 2008-02-01 Thijs Vermeir * docs/libs/gstreamer-libs-sections.txt: diff --git a/tools/gst-inspect.c b/tools/gst-inspect.c index 7712225..0c380f6 100644 --- a/tools/gst-inspect.c +++ b/tools/gst-inspect.c @@ -259,8 +259,8 @@ print_interfaces (GType type) if (_name) g_print (_name); g_print ("\n"); - g_free (ifaces); } + g_free (ifaces); } } @@ -569,6 +569,8 @@ print_element_properties_info (GstElement * element) g_print (" Write only\n"); else g_print ("\n"); + + g_value_reset (&value); } if (num_properties == 0) n_print (" none\n"); @@ -728,17 +730,22 @@ print_pad_info (GstElement * element) pads = element->pads; while (pads) { + gchar *name; + pad = GST_PAD (pads->data); pads = g_list_next (pads); n_print (""); + name = gst_pad_get_name (pad); if (gst_pad_get_direction (pad) == GST_PAD_SRC) - g_print (" SRC: '%s'", gst_pad_get_name (pad)); + g_print (" SRC: '%s'", name); else if (gst_pad_get_direction (pad) == GST_PAD_SINK) - g_print (" SINK: '%s'", gst_pad_get_name (pad)); + g_print (" SINK: '%s'", name); else - g_print (" UNKNOWN!!!: '%s'", gst_pad_get_name (pad)); + g_print (" UNKNOWN!!!: '%s'", name); + + g_free (name); g_print ("\n"); @@ -814,7 +821,11 @@ print_signal_info (GstElement * element) if ((k == 0 && !(query->signal_flags & G_SIGNAL_ACTION)) || (k == 1 && (query->signal_flags & G_SIGNAL_ACTION))) found_signals = g_slist_append (found_signals, query); + else + g_free (query); } + g_free (signals); + signals = NULL; } if (found_signals) { @@ -1150,6 +1161,7 @@ print_element_info (GstElementFactory * factory, gboolean print_names) print_signal_info (element); print_children_info (element); + gst_object_unref (element); gst_object_unref (factory); g_free (_name);