gnunet-svn
[Top][All Lists]
Advanced

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

[GNUnet-SVN] r37398 - gnunet/src/cadet


From: gnunet
Subject: [GNUnet-SVN] r37398 - gnunet/src/cadet
Date: Mon, 27 Jun 2016 16:35:34 +0200

Author: grothoff
Date: 2016-06-27 16:35:33 +0200 (Mon, 27 Jun 2016)
New Revision: 37398

Modified:
   gnunet/src/cadet/gnunet-service-cadet_peer.c
Log:
avoid NPE

Modified: gnunet/src/cadet/gnunet-service-cadet_peer.c
===================================================================
--- gnunet/src/cadet/gnunet-service-cadet_peer.c        2016-06-27 14:11:11 UTC 
(rev 37397)
+++ gnunet/src/cadet/gnunet-service-cadet_peer.c        2016-06-27 14:35:33 UTC 
(rev 37398)
@@ -455,8 +455,6 @@
 
   GNUNET_assert (NULL == neighbor->connections);
   neighbor->connections = GNUNET_CONTAINER_multihashmap_create (16, GNUNET_NO);
-  GNUNET_assert (NULL != neighbor->connections);
-
   GNUNET_STATISTICS_update (stats,
                             "# peers",
                             1,
@@ -501,11 +499,14 @@
          "DISCONNECTED %s <= %s\n",
          own_id, GNUNET_i2s (peer));
   direct_path = pop_direct_path (p);
-  GNUNET_CONTAINER_multihashmap_iterate (p->connections,
-                                         &notify_broken,
-                                         p);
-  GNUNET_CONTAINER_multihashmap_destroy (p->connections);
-  p->connections = NULL;
+  if (NULL != p->connections)
+  {
+    GNUNET_CONTAINER_multihashmap_iterate (p->connections,
+                                           &notify_broken,
+                                           p);
+    GNUNET_CONTAINER_multihashmap_destroy (p->connections);
+    p->connections = NULL;
+  }
   if (NULL != p->core_transmit)
   {
     GNUNET_CORE_notify_transmit_ready_cancel (p->core_transmit);
@@ -774,6 +775,7 @@
   {
     GNUNET_assert (0 == GNUNET_CONTAINER_multihashmap_size 
(peer->connections));
     GNUNET_CONTAINER_multihashmap_destroy (peer->connections);
+    peer->connections = NULL;
   }
   if (NULL != peer->hello_offer)
   {
@@ -818,6 +820,7 @@
 {
   struct CadetPeer *p = value;
   struct CadetTunnel *t = p->tunnel;
+
   LOG (GNUNET_ERROR_TYPE_DEBUG, "  shutting down %s\n", GCP_2s (p));
   if (NULL != t)
     GCT_destroy (t);




reply via email to

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