gnunet-svn
[Top][All Lists]
Advanced

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

[GNUnet-SVN] r31408 - gnunet/src/mesh


From: gnunet
Subject: [GNUnet-SVN] r31408 - gnunet/src/mesh
Date: Mon, 16 Dec 2013 13:37:49 +0100

Author: bartpolot
Date: 2013-12-16 13:37:49 +0100 (Mon, 16 Dec 2013)
New Revision: 31408

Modified:
   gnunet/src/mesh/gnunet-service-mesh_connection.c
Log:
- fixes


Modified: gnunet/src/mesh/gnunet-service-mesh_connection.c
===================================================================
--- gnunet/src/mesh/gnunet-service-mesh_connection.c    2013-12-16 12:17:39 UTC 
(rev 31407)
+++ gnunet/src/mesh/gnunet-service-mesh_connection.c    2013-12-16 12:37:49 UTC 
(rev 31408)
@@ -2222,7 +2222,10 @@
   if (GNUNET_OK != register_neighbors (c))
   {
     if (0 == own_pos)
+    {
       GMT_remove_path (c->t, p);
+      c->path = NULL;
+    }
     GMC_destroy (c);
     return NULL;
   }
@@ -2258,8 +2261,11 @@
        c->fwd_fc.poll_task, c->bck_fc.poll_task);
 
   /* Cancel all traffic */
-  connection_cancel_queues (c, GNUNET_YES);
-  connection_cancel_queues (c, GNUNET_NO);
+  if (NULL != c->path)
+  {
+    connection_cancel_queues (c, GNUNET_YES);
+    connection_cancel_queues (c, GNUNET_NO);
+  }
 
   LOG (GNUNET_ERROR_TYPE_DEBUG, " fc tasks f: %u, b: %u\n",
        c->fwd_fc.poll_task, c->bck_fc.poll_task);
@@ -2284,7 +2290,7 @@
   if (NULL != c->t)
     GMT_remove_connection (c->t, c);
 
-  if (GNUNET_NO == GMC_is_origin (c, GNUNET_YES))
+  if (GNUNET_NO == GMC_is_origin (c, GNUNET_YES) && NULL != c->path)
     path_destroy (c->path);
   if (GNUNET_SCHEDULER_NO_TASK != c->fwd_maintenance_task)
     GNUNET_SCHEDULER_cancel (c->fwd_maintenance_task);




reply via email to

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