gnunet-svn
[Top][All Lists]
Advanced

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

[GNUnet-SVN] r35259 - gnunet/src/rps


From: gnunet
Subject: [GNUnet-SVN] r35259 - gnunet/src/rps
Date: Sun, 15 Feb 2015 18:19:39 +0100

Author: ch3
Date: 2015-02-15 18:19:39 +0100 (Sun, 15 Feb 2015)
New Revision: 35259

Modified:
   gnunet/src/rps/gnunet-service-rps.c
Log:
- restructured peer removal

Modified: gnunet/src/rps/gnunet-service-rps.c
===================================================================
--- gnunet/src/rps/gnunet-service-rps.c 2015-02-15 17:19:36 UTC (rev 35258)
+++ gnunet/src/rps/gnunet-service-rps.c 2015-02-15 17:19:39 UTC (rev 35259)
@@ -1461,7 +1461,8 @@
   s = RPS_sampler_count_id (sampler, id);
   if ( 1 >= s )
   {
-    if (GNUNET_YES == GNUNET_CONTAINER_multipeermap_contains (peer_map, id))
+    if (GNUNET_YES == GNUNET_CONTAINER_multipeermap_contains (peer_map, id)
+        && 0 != GNUNET_CRYPTO_cmp_peer_identity (id, &own_identity))
     {
       ctx = GNUNET_CONTAINER_multipeermap_get (peer_map, id);
       if (NULL != ctx->send_channel)
@@ -1469,12 +1470,15 @@
         if (NULL != ctx->mq)
         {
           GNUNET_MQ_destroy (ctx->mq);
+          ctx->mq = NULL;
         }
         // may already be freed at shutdown of cadet
-        //GNUNET_CADET_channel_destroy (ctx->send_channel);
+        // maybe this fails at our own channel
+        GNUNET_CADET_channel_destroy (ctx->send_channel);
+        ctx->send_channel = NULL;
       }
       // TODO cleanup peer
-      (void) GNUNET_CONTAINER_multipeermap_remove_all (peer_map, id);
+      //(void) GNUNET_CONTAINER_multipeermap_remove_all (peer_map, id);
     }
   }
 }




reply via email to

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