gnunet-svn
[Top][All Lists]
Advanced

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

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


From: gnunet
Subject: [GNUnet-SVN] r17271 - gnunet/src/transport
Date: Fri, 7 Oct 2011 10:20:56 +0200

Author: wachs
Date: 2011-10-07 10:20:56 +0200 (Fri, 07 Oct 2011)
New Revision: 17271

Modified:
   gnunet/src/transport/plugin_transport_http.c
Log:
mem corruption


Modified: gnunet/src/transport/plugin_transport_http.c
===================================================================
--- gnunet/src/transport/plugin_transport_http.c        2011-10-06 21:38:21 UTC 
(rev 17270)
+++ gnunet/src/transport/plugin_transport_http.c        2011-10-07 08:20:56 UTC 
(rev 17271)
@@ -1272,7 +1272,6 @@
   s = plugin->head;
   while (s != NULL)
   {
-    struct Session *t = s->next;
 #if DEBUG_HTTP
   GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, plugin->name,
                    "Disconnecting `%s' \n", GNUNET_i2s (&s->target));
@@ -1281,10 +1280,7 @@
       GNUNET_assert (GNUNET_OK == client_disconnect (s));
     else
       GNUNET_assert (GNUNET_OK == server_disconnect (s));
-
-    GNUNET_CONTAINER_DLL_remove (plugin->head, plugin->tail, s);
-    delete_session (s);
-    s = t;
+    s = s->next;
   }
 
 #if DEBUG_HTTP
@@ -1301,7 +1297,17 @@
   /* Stop client */
   client_stop (plugin);
 
+  /* deleting up sessions */
+  s = plugin->head;
+  while (s != NULL)
+  {
+    struct Session *t = s->next;
+    GNUNET_CONTAINER_DLL_remove (plugin->head, plugin->tail, s);
+    delete_session (s);
+    s = t;
+  }
 
+
 #if DEBUG_HTTP
   GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, plugin->name,
                    "Plugin `%s' unloaded\n", plugin->name);




reply via email to

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