From d5b18ae58fc3c567f1b46ae604c0a80ba222a95c Mon Sep 17 00:00:00 2001 From: Matthew Waters Date: Wed, 6 Mar 2019 23:27:11 +1100 Subject: [PATCH] tests/glbin: setting a full reference means we need to unref Fixes the element leaks in the full variants of the glbin test. --- tests/check/elements/glbin.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/tests/check/elements/glbin.c b/tests/check/elements/glbin.c index 0c3ca7ea5c..12fb5ed3e7 100644 --- a/tests/check/elements/glbin.c +++ b/tests/check/elements/glbin.c @@ -34,8 +34,6 @@ typedef GstElement *(*CreateElement) (GstElement * src, gpointer unused); #define CREATE_ELEMENT(e,c,d) \ g_signal_connect (e, "create-element", G_CALLBACK (c), d) -#define SET_ELEMENT(e,p,c,d) \ - g_object_set (e, p, c (e, d), NULL) static GstElement * _create_element_floating_cb (GstElement * src, const gchar * name) @@ -58,14 +56,16 @@ struct src_data static void _set_element_floating (GstElement * e, struct src_data *d /* static */ ) { - SET_ELEMENT (e, d->prop, _create_element_floating_cb, - (gchar *) d->element_name); + g_object_set (e, d->prop, _create_element_floating_cb (e, d->element_name), + NULL); } static void _set_element_full (GstElement * e, struct src_data *d /* static */ ) { - SET_ELEMENT (e, d->prop, _create_element_full_cb, (gchar *) d->element_name); + GstElement *element = _create_element_full_cb (e, d->element_name); + g_object_set (e, d->prop, element, NULL); + gst_object_unref (element); } static void