From 6867ec56273f7123557590a5576a4635d64e9d5f Mon Sep 17 00:00:00 2001 From: Lasse Laukkanen Date: Mon, 8 Nov 2010 10:33:58 -0300 Subject: [PATCH] examples: camerabin: Remove gstring leak Simplify gst-camerabin-test by removing GString and replacing with gchar for the filename handling. Also removes a leak of the GString data. --- tests/examples/camerabin/gst-camerabin-test.c | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/tests/examples/camerabin/gst-camerabin-test.c b/tests/examples/camerabin/gst-camerabin-test.c index 8c5f362..6ebd1e2 100644 --- a/tests/examples/camerabin/gst-camerabin-test.c +++ b/tests/examples/camerabin/gst-camerabin-test.c @@ -602,8 +602,8 @@ run_pipeline (gpointer user_data) { GstCaps *preview_caps = NULL; gchar *filename_str = NULL; - GString *filename_buffer = NULL; GstElement *video_source = NULL; + const gchar *filename_suffix; g_object_set (camera_bin, "mode", mode, NULL); @@ -618,20 +618,18 @@ run_pipeline (gpointer user_data) set_metadata (camera_bin); - filename_str = g_strdup_printf ("/test_%04u", capture_count); - filename_buffer = g_string_new (filename->str); - filename_buffer = g_string_append (filename_buffer, filename_str); - + /* Construct filename */ if (mode == 1) - filename_buffer = g_string_append (filename_buffer, ".mp4"); + filename_suffix = ".mp4"; else - filename_buffer = g_string_append (filename_buffer, ".jpg"); - - g_object_set (camera_bin, "filename", filename_buffer->str, NULL); - g_string_free (filename_buffer, FALSE); + filename_suffix = ".jpg"; + filename_str = + g_strdup_printf ("%s/test_%04u%s", filename->str, capture_count, + filename_suffix); + GST_DEBUG ("Setting filename: %s", filename_str); + g_object_set (camera_bin, "filename", filename_str, NULL); g_free (filename_str); - g_object_get (camera_bin, "video-source", &video_source, NULL); if (video_source) { if (GST_IS_ELEMENT (video_source) && -- 2.7.4