From fcdfcbd618bf4235536122cd63856765827ff4ca Mon Sep 17 00:00:00 2001 From: Vineeth TM Date: Tue, 15 Sep 2015 10:56:40 +0900 Subject: [PATCH] downloadbuffer, benchmarks: fix error leaks in failure code paths https://bugzilla.gnome.org/show_bug.cgi?id=755019 --- libs/gst/check/gstcheck.c | 1 + plugins/elements/gstdownloadbuffer.c | 1 + tests/benchmarks/gstbufferstress.c | 1 + tests/benchmarks/gstclockstress.c | 1 + tests/benchmarks/gstpollstress.c | 1 + 5 files changed, 5 insertions(+) diff --git a/libs/gst/check/gstcheck.c b/libs/gst/check/gstcheck.c index f019da8b3a..1095bcc0e9 100644 --- a/libs/gst/check/gstcheck.c +++ b/libs/gst/check/gstcheck.c @@ -794,6 +794,7 @@ gst_check_abi_list (GstCheckABIStruct list[], gboolean have_abi_sizes) if (!g_file_set_contents (fn, s->str, s->len, &err)) { g_print ("%s", s->str); g_printerr ("\nFailed to write ABI information: %s\n", err->message); + g_clear_error (&err); } else { g_print ("\nWrote ABI information to '%s'.\n", fn); } diff --git a/plugins/elements/gstdownloadbuffer.c b/plugins/elements/gstdownloadbuffer.c index 3b760e2cff..83c28fa30d 100644 --- a/plugins/elements/gstdownloadbuffer.c +++ b/plugins/elements/gstdownloadbuffer.c @@ -840,6 +840,7 @@ hit_eos: out_flushing: { GST_DEBUG_OBJECT (dlbuf, "we are flushing"); + g_clear_error (&error); gst_buffer_unmap (buf, &info); if (*buffer == NULL) gst_buffer_unref (buf); diff --git a/tests/benchmarks/gstbufferstress.c b/tests/benchmarks/gstbufferstress.c index 7871561bb3..c9a4ac10df 100644 --- a/tests/benchmarks/gstbufferstress.c +++ b/tests/benchmarks/gstbufferstress.c @@ -101,6 +101,7 @@ main (gint argc, gchar * argv[]) if (error) { printf ("ERROR: g_thread_try_new() %s\n", error->message); + g_clear_error (&error); exit (-1); } } diff --git a/tests/benchmarks/gstclockstress.c b/tests/benchmarks/gstclockstress.c index 8dacf0341e..0d30900309 100644 --- a/tests/benchmarks/gstclockstress.c +++ b/tests/benchmarks/gstclockstress.c @@ -75,6 +75,7 @@ main (gint argc, gchar * argv[]) if (error) { printf ("ERROR: g_thread_try_new() %s\n", error->message); + g_clear_error (&error); exit (-1); } } diff --git a/tests/benchmarks/gstpollstress.c b/tests/benchmarks/gstpollstress.c index 09b2b06ced..fcfed157df 100644 --- a/tests/benchmarks/gstpollstress.c +++ b/tests/benchmarks/gstpollstress.c @@ -165,6 +165,7 @@ main (gint argc, gchar * argv[]) if (error) { printf ("ERROR: g_thread_try_new() %s\n", error->message); + g_clear_error (&error); exit (-1); } }