From e260aac3d2ec14358619f72c31b8411263f0d443 Mon Sep 17 00:00:00 2001
From: akwizgran <akwizgran@users.sourceforge.net>
Date: Fri, 4 Apr 2014 18:56:55 +0100
Subject: [PATCH] All tryToClose() methods should check for null arguments.

---
 .../briarproject/plugins/droidtooth/DroidtoothPlugin.java | 4 ++++
 briar-core/src/org/briarproject/db/JdbcDatabase.java      | 8 ++++----
 .../briarproject/plugins/bluetooth/BluetoothPlugin.java   | 2 +-
 .../src/org/briarproject/plugins/modem/ModemImpl.java     | 2 +-
 4 files changed, 10 insertions(+), 6 deletions(-)

diff --git a/briar-android/src/org/briarproject/plugins/droidtooth/DroidtoothPlugin.java b/briar-android/src/org/briarproject/plugins/droidtooth/DroidtoothPlugin.java
index 121208505b..97762a53ff 100644
--- a/briar-android/src/org/briarproject/plugins/droidtooth/DroidtoothPlugin.java
+++ b/briar-android/src/org/briarproject/plugins/droidtooth/DroidtoothPlugin.java
@@ -209,6 +209,10 @@ class DroidtoothPlugin implements DuplexPlugin {
 				tryToClose(socket);
 				return;
 			}
+			if(LOG.isLoggable(INFO)) {
+				String address = s.getRemoteDevice().getAddress();
+				LOG.info("Connection from " + address);
+			}
 			callback.incomingConnectionCreated(wrapSocket(s));
 		}
 	}
diff --git a/briar-core/src/org/briarproject/db/JdbcDatabase.java b/briar-core/src/org/briarproject/db/JdbcDatabase.java
index 3178847e7d..5722f7a1e9 100644
--- a/briar-core/src/org/briarproject/db/JdbcDatabase.java
+++ b/briar-core/src/org/briarproject/db/JdbcDatabase.java
@@ -404,16 +404,16 @@ abstract class JdbcDatabase implements Database<Connection> {
 	}
 
 	private void tryToClose(ResultSet rs) {
-		if(rs != null) try {
-			rs.close();
+		try {
+			if(rs != null) rs.close();
 		} catch(SQLException e) {
 			if(LOG.isLoggable(WARNING))LOG.log(WARNING, e.toString(), e);
 		}
 	}
 
 	private void tryToClose(Statement s) {
-		if(s != null) try {
-			s.close();
+		try {
+			if(s != null) s.close();
 		} catch(SQLException e) {
 			if(LOG.isLoggable(WARNING))LOG.log(WARNING, e.toString(), e);
 		}
diff --git a/briar-desktop/src/org/briarproject/plugins/bluetooth/BluetoothPlugin.java b/briar-desktop/src/org/briarproject/plugins/bluetooth/BluetoothPlugin.java
index 6c71796a74..38c96f893e 100644
--- a/briar-desktop/src/org/briarproject/plugins/bluetooth/BluetoothPlugin.java
+++ b/briar-desktop/src/org/briarproject/plugins/bluetooth/BluetoothPlugin.java
@@ -339,7 +339,7 @@ class BluetoothPlugin implements DuplexPlugin {
 
 		private void tryToClose(StreamConnection s) {
 			try {
-				s.close();
+				if(s != null) s.close();
 			} catch(IOException e) {
 				if(LOG.isLoggable(WARNING)) LOG.log(WARNING, e.toString(), e);
 			}
diff --git a/briar-desktop/src/org/briarproject/plugins/modem/ModemImpl.java b/briar-desktop/src/org/briarproject/plugins/modem/ModemImpl.java
index c7d035fed6..5cabb5cf0c 100644
--- a/briar-desktop/src/org/briarproject/plugins/modem/ModemImpl.java
+++ b/briar-desktop/src/org/briarproject/plugins/modem/ModemImpl.java
@@ -114,7 +114,7 @@ class ModemImpl implements Modem, WriteHandler, SerialPortEventListener {
 
 	private void tryToClose(SerialPort port) {
 		try {
-			port.closePort();
+			if(port != null) port.closePort();
 		} catch(IOException e) {
 			if(LOG.isLoggable(WARNING)) LOG.log(WARNING, e.toString(), e);
 		}
-- 
GitLab