From 84f5935d3876c70e7dd7bdd3974bff3cd695da50 Mon Sep 17 00:00:00 2001 From: catbref Date: Tue, 18 Jun 2019 11:16:59 +0100 Subject: [PATCH] Improve shutdown of Network. Detect interrupt during peer connect so we can return without trying to set up new peer. Do join() after interrupt() in Network.shutdown. --- src/main/java/org/qora/network/Network.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/main/java/org/qora/network/Network.java b/src/main/java/org/qora/network/Network.java index cd3efea3..ab870af6 100644 --- a/src/main/java/org/qora/network/Network.java +++ b/src/main/java/org/qora/network/Network.java @@ -362,6 +362,9 @@ public class Network extends Thread { if (!newPeer.connect()) return; + if (this.isInterrupted()) + return; + synchronized (this.connectedPeers) { this.connectedPeers.add(newPeer); } @@ -824,6 +827,11 @@ public class Network extends Thread { peerExecutor.shutdownNow(); this.interrupt(); + try { + this.join(); + } catch (InterruptedException e) { + // We were interrupted while waiting for thread to join + } } }