aboutsummaryrefslogtreecommitdiff
path: root/src/core
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2011-11-21 15:09:48 +0000
committerChristian Grothoff <christian@grothoff.org>2011-11-21 15:09:48 +0000
commit02cb5ad65de4f9b98107e655e9d1850d7aa02ec7 (patch)
treee8ecf5d96047c2423f54cbe3c6dda7b23aa4094d /src/core
parentbb82e293b4988b807546b7827b36388ca53ce41f (diff)
downloadgnunet-02cb5ad65de4f9b98107e655e9d1850d7aa02ec7.tar.gz
gnunet-02cb5ad65de4f9b98107e655e9d1850d7aa02ec7.zip
fix leak
Diffstat (limited to 'src/core')
-rw-r--r--src/core/gnunet-service-core_sessions.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/core/gnunet-service-core_sessions.c b/src/core/gnunet-service-core_sessions.c
index ab825e9b6..51bd03279 100644
--- a/src/core/gnunet-service-core_sessions.c
+++ b/src/core/gnunet-service-core_sessions.c
@@ -171,7 +171,8 @@ GSC_SESSIONS_end (const struct GNUNET_PeerIdentity *pid)
171{ 171{
172 struct Session *session; 172 struct Session *session;
173 struct GSC_ClientActiveRequest *car; 173 struct GSC_ClientActiveRequest *car;
174 174 struct SessionMessageEntry *sme;
175
175 session = find_session (pid); 176 session = find_session (pid);
176 if (NULL == session) 177 if (NULL == session)
177 return; 178 return;
@@ -190,6 +191,13 @@ GSC_SESSIONS_end (const struct GNUNET_PeerIdentity *pid)
190 session->active_client_request_tail, car); 191 session->active_client_request_tail, car);
191 GSC_CLIENTS_reject_request (car); 192 GSC_CLIENTS_reject_request (car);
192 } 193 }
194 while (NULL != (sme = session->sme_head))
195 {
196 GNUNET_CONTAINER_DLL_remove (session->sme_head,
197 session->sme_tail,
198 sme);
199 GNUNET_free (sme);
200 }
193 GNUNET_SCHEDULER_cancel (session->typemap_task); 201 GNUNET_SCHEDULER_cancel (session->typemap_task);
194 GSC_CLIENTS_notify_clients_about_neighbour (&session->peer, NULL, 202 GSC_CLIENTS_notify_clients_about_neighbour (&session->peer, NULL,
195 0 /* FIXME: ATSI */ , 203 0 /* FIXME: ATSI */ ,