From f15e6e85634af0ae8ea7866d6d8c274365e68645 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Manuel=20J=C3=A1quez=20Leal?= Date: Wed, 11 Feb 2015 13:42:54 +0100 Subject: memory leaks at logging The function gst_caps_to_string () return a new allocated string that should be free. Some logging instructions use that function without freeing the allocated string. This patch replaces the function with GST_PTR_FORMAT magic, and in the case of the tests, the free() is added. https://bugzilla.gnome.org/show_bug.cgi?id=744326 --- tests/test-alpha.c | 5 ++++- tests/test-rgb-upload.c | 5 ++++- tests/test-yuv-upload.c | 5 ++++- 3 files changed, 12 insertions(+), 3 deletions(-) (limited to 'tests') diff --git a/tests/test-alpha.c b/tests/test-alpha.c index 5f3f5a1..93a32b6 100644 --- a/tests/test-alpha.c +++ b/tests/test-alpha.c @@ -82,6 +82,7 @@ main (int argc, char *argv[]) GstElement *capsfilter; GstElement *sink; GstCaps *caps; + gchar *capsstr; result = clutter_gst_init_with_args (&argc, &argv, @@ -151,7 +152,9 @@ main (int argc, char *argv[]) g_object_set (capsfilter, "caps", caps, NULL); - g_printf ("%s: [caps] %s\n", __FILE__, gst_caps_to_string (caps)); + capsstr = gst_caps_to_string (caps); + g_printf ("%s: [caps] %s\n", __FILE__, capsstr); + g_free (capsstr); gst_bin_add_many (GST_BIN (pipeline), src, capsfilter, sink, NULL); result = gst_element_link_many (src, capsfilter, sink, NULL); if (result == FALSE) diff --git a/tests/test-rgb-upload.c b/tests/test-rgb-upload.c index 63708ae..9cf3ae9 100644 --- a/tests/test-rgb-upload.c +++ b/tests/test-rgb-upload.c @@ -75,6 +75,7 @@ main (int argc, char *argv[]) GstElement *capsfilter; GstElement *sink; GstCaps *caps; + gchar *capsstr; GstVideoFormat format; result = clutter_gst_init_with_args (&argc, @@ -124,7 +125,9 @@ main (int argc, char *argv[]) NULL); g_object_set (capsfilter, "caps", caps, NULL); - g_printf ("%s: [caps] %s\n", __FILE__, gst_caps_to_string (caps)); + capsstr = gst_caps_to_string (caps); + g_printf ("%s: [caps] %s\n", __FILE__, capsstr); + g_free (capsstr); gst_bin_add_many (GST_BIN (pipeline), src, capsfilter, sink, NULL); result = gst_element_link_many (src, capsfilter, sink, NULL); if (result == FALSE) diff --git a/tests/test-yuv-upload.c b/tests/test-yuv-upload.c index c1608cd..4b7f7a4 100644 --- a/tests/test-yuv-upload.c +++ b/tests/test-yuv-upload.c @@ -64,6 +64,7 @@ main (int argc, char *argv[]) GstElement *capsfilter; GstElement *sink; GstCaps *caps; + gchar *capsstr; result = clutter_gst_init_with_args (&argc, &argv, @@ -106,7 +107,9 @@ main (int argc, char *argv[]) NULL); g_object_set (capsfilter, "caps", caps, NULL); - g_printf ("%s: [caps] %s\n", __FILE__, gst_caps_to_string (caps)); + capsstr = gst_caps_to_string (caps); + g_printf ("%s: [caps] %s\n", __FILE__, capsstr); + g_free (capsstr); gst_bin_add_many (GST_BIN (pipeline), src, capsfilter, sink, NULL); result = gst_element_link_many (src, capsfilter, sink, NULL); if (result == FALSE) -- cgit v1.2.1