diff options
author | Christian Grothoff <christian@grothoff.org> | 2016-06-27 14:35:33 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2016-06-27 14:35:33 +0000 |
commit | 71a483b672933fb1de45aebb7869a06bc63f09be (patch) | |
tree | dea6a099c5d900b5ac8cf17fbd85ad8457b59111 /src/cadet | |
parent | a74c37dde046da0c3c0765f47b0fb01ece6a1cc1 (diff) | |
download | gnunet-71a483b672933fb1de45aebb7869a06bc63f09be.tar.gz gnunet-71a483b672933fb1de45aebb7869a06bc63f09be.zip |
avoid NPE
Diffstat (limited to 'src/cadet')
-rw-r--r-- | src/cadet/gnunet-service-cadet_peer.c | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/src/cadet/gnunet-service-cadet_peer.c b/src/cadet/gnunet-service-cadet_peer.c index ee8f9652f..fa16db4bb 100644 --- a/src/cadet/gnunet-service-cadet_peer.c +++ b/src/cadet/gnunet-service-cadet_peer.c | |||
@@ -455,8 +455,6 @@ core_connect (void *cls, | |||
455 | 455 | ||
456 | GNUNET_assert (NULL == neighbor->connections); | 456 | GNUNET_assert (NULL == neighbor->connections); |
457 | neighbor->connections = GNUNET_CONTAINER_multihashmap_create (16, GNUNET_NO); | 457 | neighbor->connections = GNUNET_CONTAINER_multihashmap_create (16, GNUNET_NO); |
458 | GNUNET_assert (NULL != neighbor->connections); | ||
459 | |||
460 | GNUNET_STATISTICS_update (stats, | 458 | GNUNET_STATISTICS_update (stats, |
461 | "# peers", | 459 | "# peers", |
462 | 1, | 460 | 1, |
@@ -501,11 +499,14 @@ core_disconnect (void *cls, | |||
501 | "DISCONNECTED %s <= %s\n", | 499 | "DISCONNECTED %s <= %s\n", |
502 | own_id, GNUNET_i2s (peer)); | 500 | own_id, GNUNET_i2s (peer)); |
503 | direct_path = pop_direct_path (p); | 501 | direct_path = pop_direct_path (p); |
504 | GNUNET_CONTAINER_multihashmap_iterate (p->connections, | 502 | if (NULL != p->connections) |
505 | ¬ify_broken, | 503 | { |
506 | p); | 504 | GNUNET_CONTAINER_multihashmap_iterate (p->connections, |
507 | GNUNET_CONTAINER_multihashmap_destroy (p->connections); | 505 | ¬ify_broken, |
508 | p->connections = NULL; | 506 | p); |
507 | GNUNET_CONTAINER_multihashmap_destroy (p->connections); | ||
508 | p->connections = NULL; | ||
509 | } | ||
509 | if (NULL != p->core_transmit) | 510 | if (NULL != p->core_transmit) |
510 | { | 511 | { |
511 | GNUNET_CORE_notify_transmit_ready_cancel (p->core_transmit); | 512 | GNUNET_CORE_notify_transmit_ready_cancel (p->core_transmit); |
@@ -774,6 +775,7 @@ peer_destroy (struct CadetPeer *peer) | |||
774 | { | 775 | { |
775 | GNUNET_assert (0 == GNUNET_CONTAINER_multihashmap_size (peer->connections)); | 776 | GNUNET_assert (0 == GNUNET_CONTAINER_multihashmap_size (peer->connections)); |
776 | GNUNET_CONTAINER_multihashmap_destroy (peer->connections); | 777 | GNUNET_CONTAINER_multihashmap_destroy (peer->connections); |
778 | peer->connections = NULL; | ||
777 | } | 779 | } |
778 | if (NULL != peer->hello_offer) | 780 | if (NULL != peer->hello_offer) |
779 | { | 781 | { |
@@ -818,6 +820,7 @@ shutdown_peer (void *cls, | |||
818 | { | 820 | { |
819 | struct CadetPeer *p = value; | 821 | struct CadetPeer *p = value; |
820 | struct CadetTunnel *t = p->tunnel; | 822 | struct CadetTunnel *t = p->tunnel; |
823 | |||
821 | LOG (GNUNET_ERROR_TYPE_DEBUG, " shutting down %s\n", GCP_2s (p)); | 824 | LOG (GNUNET_ERROR_TYPE_DEBUG, " shutting down %s\n", GCP_2s (p)); |
822 | if (NULL != t) | 825 | if (NULL != t) |
823 | GCT_destroy (t); | 826 | GCT_destroy (t); |