From 6d68fa5c4a2926b9dbe2abe8dbc53dfe76296426 Mon Sep 17 00:00:00 2001
From: akwizgran <akwizgran@users.sourceforge.net>
Date: Thu, 6 Oct 2011 19:32:55 +0100
Subject: [PATCH] Check whether the socket has been set to null due to a failed
 re-binding.

---
 components/net/sf/briar/plugins/socket/SocketPlugin.java | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/components/net/sf/briar/plugins/socket/SocketPlugin.java b/components/net/sf/briar/plugins/socket/SocketPlugin.java
index fc2cfaf374..b5569a3298 100644
--- a/components/net/sf/briar/plugins/socket/SocketPlugin.java
+++ b/components/net/sf/briar/plugins/socket/SocketPlugin.java
@@ -88,6 +88,7 @@ implements StreamTransportPlugin {
 			Socket s;
 			synchronized(this) {
 				if(!started) return;
+				if(socket == null) return;
 				ss = socket;
 			}
 			try {
@@ -114,7 +115,10 @@ implements StreamTransportPlugin {
 
 	public synchronized void stop() throws IOException {
 		super.stop();
-		if(socket != null) socket.close();
+		if(socket != null) {
+			socket.close();
+			socket = null;
+		}
 	}
 
 	public synchronized void setLocalProperties(Map<String, String> properties)
@@ -129,6 +133,7 @@ implements StreamTransportPlugin {
 				} catch(IOException e) {
 					// FIXME: Logging
 				}
+				socket = null;
 				executor.execute(createBinder());
 			}
 		}
-- 
GitLab