From f58ee132449e2ab219163100e5808285fc7b6b78 Mon Sep 17 00:00:00 2001
From: akwizgran <akwizgran@users.sourceforge.net>
Date: Fri, 22 Apr 2016 15:19:52 +0100
Subject: [PATCH] Reset connection status when enabling network.

---
 .../src/org/briarproject/plugins/tor/TorPlugin.java | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/briar-android/src/org/briarproject/plugins/tor/TorPlugin.java b/briar-android/src/org/briarproject/plugins/tor/TorPlugin.java
index 63ccc6ba57..3b8e56cc65 100644
--- a/briar-android/src/org/briarproject/plugins/tor/TorPlugin.java
+++ b/briar-android/src/org/briarproject/plugins/tor/TorPlugin.java
@@ -495,17 +495,18 @@ class TorPlugin implements DuplexPlugin, EventHandler,
 
 	private void enableNetwork(boolean enable) throws IOException {
 		if (!running) return;
+		if (networkEnabled == enable) return;
 		if (LOG.isLoggable(INFO)) LOG.info("Enabling network: " + enable);
 		if (enable) wakeLock.acquire();
+		circuitBuilt.set(false);
+		descriptorsPublished.set(0);
+		descriptorsPublishedTime = Long.MAX_VALUE;
+		networkEnabled = enable;
+		controlConnection.setConf("DisableNetwork", enable ? "0" : "1");
 		if (!enable) {
-			circuitBuilt.set(false);
-			descriptorsPublished.set(0);
-			descriptorsPublishedTime = Long.MAX_VALUE;
 			callback.transportDisabled();
+			wakeLock.release();
 		}
-		networkEnabled = enable;
-		controlConnection.setConf("DisableNetwork", enable ? "0" : "1");
-		if (!enable) wakeLock.release();
 	}
 
 	public void stop() throws IOException {
-- 
GitLab