summaryrefslogtreecommitdiff
path: root/agent/discovery.c
diff options
context:
space:
mode:
authorOlivier CrĂȘte <olivier.crete@collabora.com>2014-04-22 17:03:03 -0400
committerOlivier CrĂȘte <olivier.crete@collabora.com>2014-04-24 21:04:31 -0400
commit9057acc5300a6038c73cee25470a4c0950f3d31c (patch)
tree91e79f789f8996e7f118d891f73ad6348878cba6 /agent/discovery.c
parent3a90ff40fa9ff4ebb94e6514c46d6f6d70e1fdc8 (diff)
downloadlibnice-9057acc5300a6038c73cee25470a4c0950f3d31c.tar.gz
discovery: Use g_slist_free_full for discovery list
Diffstat (limited to 'agent/discovery.c')
-rw-r--r--agent/discovery.c14
1 files changed, 5 insertions, 9 deletions
diff --git a/agent/discovery.c b/agent/discovery.c
index 7511d3d..2fa3ea7 100644
--- a/agent/discovery.c
+++ b/agent/discovery.c
@@ -70,13 +70,10 @@ static inline int priv_timer_expired (GTimeVal *timer, GTimeVal *now)
/*
* Frees the CandidateDiscovery structure pointed to
- * by 'user data'. Compatible with g_slist_foreach().
+ * by 'user data'. Compatible with g_slist_free_full().
*/
-void discovery_free_item (gpointer data, gpointer user_data)
+static void discovery_free_item (CandidateDiscovery *cand)
{
- CandidateDiscovery *cand = data;
- g_assert (user_data == NULL);
-
g_slice_free (CandidateDiscovery, cand);
}
@@ -85,9 +82,8 @@ void discovery_free_item (gpointer data, gpointer user_data)
*/
void discovery_free (NiceAgent *agent)
{
-
- g_slist_foreach (agent->discovery_list, discovery_free_item, NULL);
- g_slist_free (agent->discovery_list);
+ g_slist_free_full (agent->discovery_list,
+ (GDestroyNotify) discovery_free_item);
agent->discovery_list = NULL;
agent->discovery_unsched_items = 0;
@@ -114,7 +110,7 @@ void discovery_prune_stream (NiceAgent *agent, guint stream_id)
if (cand->stream->id == stream_id) {
agent->discovery_list = g_slist_remove (agent->discovery_list, cand);
- discovery_free_item (cand, NULL);
+ discovery_free_item (cand);
}
i = next;
}