diff options
author | Christian Grothoff <christian@grothoff.org> | 2013-11-16 18:30:45 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2013-11-16 18:30:45 +0000 |
commit | 16d4890cc9745833cd1542d5ec4391b7e4f87c71 (patch) | |
tree | 831dde37f3656ece33cfdaaa49dee38d05b5df63 | |
parent | 1db90656f1bd989b7fc621bb1929b99a1bb6d19b (diff) | |
download | gnunet-16d4890cc9745833cd1542d5ec4391b7e4f87c71.tar.gz gnunet-16d4890cc9745833cd1542d5ec4391b7e4f87c71.zip |
-clean up during shutdown
-rw-r--r-- | src/conversation/gnunet-service-conversation.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/conversation/gnunet-service-conversation.c b/src/conversation/gnunet-service-conversation.c index 08c93eb59..b12d0e193 100644 --- a/src/conversation/gnunet-service-conversation.c +++ b/src/conversation/gnunet-service-conversation.c | |||
@@ -1408,6 +1408,19 @@ static void | |||
1408 | do_shutdown (void *cls, | 1408 | do_shutdown (void *cls, |
1409 | const struct GNUNET_SCHEDULER_TaskContext *tc) | 1409 | const struct GNUNET_SCHEDULER_TaskContext *tc) |
1410 | { | 1410 | { |
1411 | struct Line *line; | ||
1412 | struct Channel *ch; | ||
1413 | |||
1414 | while (NULL != (line = lines_head)) | ||
1415 | { | ||
1416 | while (NULL != (ch = line->channel_head)) | ||
1417 | destroy_line_mesh_channels (ch); | ||
1418 | GNUNET_CONTAINER_DLL_remove (lines_head, | ||
1419 | lines_tail, | ||
1420 | line); | ||
1421 | GNUNET_SERVER_client_set_user_context (line->client, (void *) NULL); | ||
1422 | GNUNET_free (line); | ||
1423 | } | ||
1411 | if (NULL != mesh) | 1424 | if (NULL != mesh) |
1412 | { | 1425 | { |
1413 | GNUNET_MESH_disconnect (mesh); | 1426 | GNUNET_MESH_disconnect (mesh); |