diff options
Diffstat (limited to 'gst/udp/gstmultiudpsink.c')
-rw-r--r-- | gst/udp/gstmultiudpsink.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gst/udp/gstmultiudpsink.c b/gst/udp/gstmultiudpsink.c index 670162c0..bcafd95f 100644 --- a/gst/udp/gstmultiudpsink.c +++ b/gst/udp/gstmultiudpsink.c @@ -92,6 +92,8 @@ static void gst_multiudpsink_set_property (GObject * object, guint prop_id, static void gst_multiudpsink_get_property (GObject * object, guint prop_id, GValue * value, GParamSpec * pspec); +static void free_client (GstUDPClient * client); + static GstElementClass *parent_class = NULL; static guint gst_multiudpsink_signals[LAST_SIGNAL] = { 0 }; @@ -269,6 +271,9 @@ gst_multiudpsink_finalize (GObject * object) sink = GST_MULTIUDPSINK (object); + g_list_foreach (sink->clients, (GFunc) free_client, NULL); + g_list_free (sink->clients); + g_mutex_free (sink->client_lock); WSA_CLEANUP (object); |