gnunet-svn
[Top][All Lists]
Advanced

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

[GNUnet-SVN] r15812 - gnunet/src/transport


From: gnunet
Subject: [GNUnet-SVN] r15812 - gnunet/src/transport
Date: Fri, 1 Jul 2011 15:49:17 +0200

Author: wachs
Date: 2011-07-01 15:49:17 +0200 (Fri, 01 Jul 2011)
New Revision: 15812

Modified:
   gnunet/src/transport/gnunet-service-transport.c
Log:
old loop made plugins inaccessible


Modified: gnunet/src/transport/gnunet-service-transport.c
===================================================================
--- gnunet/src/transport/gnunet-service-transport.c     2011-07-01 13:32:21 UTC 
(rev 15811)
+++ gnunet/src/transport/gnunet-service-transport.c     2011-07-01 13:49:17 UTC 
(rev 15812)
@@ -2847,6 +2847,7 @@
          prev = al;
          al = al->next;
        }
+      GNUNET_break (0);
       return;
     }
   al = GNUNET_malloc (sizeof (struct OwnAddressList) + addrlen);
@@ -6249,6 +6250,7 @@
 shutdown_task (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
 {
   struct TransportPlugin *plug;
+  struct TransportPlugin *tmp;
   struct OwnAddressList *al;
   struct CheckHelloValidatedContext *chvc;
 
@@ -6266,9 +6268,9 @@
   GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
               "Transport service is unloading plugins...\n");
 #endif
-  while (NULL != (plug = plugins))
+  plug = plugins;
+  while (plug != NULL)
     {
-      plugins = plug->next;
       if (plug->address_update_task != GNUNET_SCHEDULER_NO_TASK)
        {
          GNUNET_SCHEDULER_cancel (plug->address_update_task);
@@ -6282,7 +6284,9 @@
           plug->addresses = al->next;
           GNUNET_free (al);
         }
+      tmp = plug->next;
       GNUNET_free (plug);
+      plug = tmp;
     }
   if (my_private_key != NULL)
     GNUNET_CRYPTO_rsa_key_free (my_private_key);




reply via email to

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