From f6078a3ab989e69e1126689b88d0c7483c43db84 Mon Sep 17 00:00:00 2001 From: Matthias Wachs Date: Tue, 20 Dec 2011 15:48:22 +0000 Subject: [PATCH] Improvement in reconnect: first disconnect, then destroy neighbours --- src/transport/transport_api.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/transport/transport_api.c b/src/transport/transport_api.c index b7704e512..9ff5cec88 100644 --- a/src/transport/transport_api.c +++ b/src/transport/transport_api.c @@ -933,8 +933,6 @@ disconnect_and_schedule_reconnect (struct GNUNET_TRANSPORT_Handle *h) struct GNUNET_TRANSPORT_TransmitHandle *th; GNUNET_assert (h->reconnect_task == GNUNET_SCHEDULER_NO_TASK); - /* Forget about all neighbours that we used to be connected to */ - GNUNET_CONTAINER_multihashmap_iterate (h->neighbours, &neighbour_delete, h); if (NULL != h->cth) { GNUNET_CLIENT_notify_transmit_ready_cancel (h->cth); @@ -945,6 +943,8 @@ disconnect_and_schedule_reconnect (struct GNUNET_TRANSPORT_Handle *h) GNUNET_CLIENT_disconnect (h->client, GNUNET_YES); h->client = NULL; } + /* Forget about all neighbours that we used to be connected to */ + GNUNET_CONTAINER_multihashmap_iterate (h->neighbours, &neighbour_delete, h); if (h->quota_task != GNUNET_SCHEDULER_NO_TASK) { GNUNET_SCHEDULER_cancel (h->quota_task); -- 2.25.1