gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r15389 - gnunet/src/core


From: gnunet
Subject: [GNUnet-SVN] r15389 - gnunet/src/core
Date: Wed, 1 Jun 2011 17:37:23 +0200

Author: grothoff
Date: 2011-06-01 17:37:23 +0200 (Wed, 01 Jun 2011)
New Revision: 15389

Modified:
   gnunet/src/core/core_api.c
Log:
fix

Modified: gnunet/src/core/core_api.c
===================================================================
--- gnunet/src/core/core_api.c  2011-06-01 15:33:58 UTC (rev 15388)
+++ gnunet/src/core/core_api.c  2011-06-01 15:37:23 UTC (rev 15389)
@@ -488,6 +488,17 @@
   struct PeerRecord *pr;
 
   GNUNET_assert (h->reconnect_task == GNUNET_SCHEDULER_NO_TASK);
+  if (h->client != NULL)
+    {
+      GNUNET_CLIENT_disconnect (h->client, GNUNET_NO);
+      h->client = NULL;
+      h->cth = NULL;
+    }
+  h->currently_down = GNUNET_YES;
+  GNUNET_assert (h->reconnect_task == GNUNET_SCHEDULER_NO_TASK);
+  h->reconnect_task = GNUNET_SCHEDULER_add_delayed (h->retry_backoff,
+                                                   &reconnect_task,
+                                                   h);
   while (NULL != (cm = h->control_pending_head))
     {
       GNUNET_CONTAINER_DLL_remove (h->control_pending_head,
@@ -499,24 +510,13 @@
        cm->cont (cm->cont_cls, GNUNET_NO);
       GNUNET_free (cm);
     }
-  if (h->client != NULL)
-    {
-      GNUNET_CLIENT_disconnect (h->client, GNUNET_NO);
-      h->client = NULL;
-      h->cth = NULL;
-      GNUNET_CONTAINER_multihashmap_iterate (h->peers,
-                                            &disconnect_and_free_peer_entry,
-                                            h);
-    }
+  GNUNET_CONTAINER_multihashmap_iterate (h->peers,
+                                        &disconnect_and_free_peer_entry,
+                                        h);
   while (NULL != (pr = h->ready_peer_head))    
     GNUNET_CONTAINER_DLL_remove (h->ready_peer_head,
                                 h->ready_peer_tail,
                                 pr);
-  h->currently_down = GNUNET_YES;
-  GNUNET_assert (h->reconnect_task == GNUNET_SCHEDULER_NO_TASK);
-  h->reconnect_task = GNUNET_SCHEDULER_add_delayed (h->retry_backoff,
-                                                   &reconnect_task,
-                                                   h);
   GNUNET_assert (h->control_pending_head == NULL);
   h->retry_backoff = GNUNET_TIME_relative_min (GNUNET_TIME_UNIT_SECONDS,
                                               h->retry_backoff);




reply via email to

[Prev in Thread] Current Thread [Next in Thread]