diff --git a/components/net/sf/briar/protocol/simplex/IncomingSimplexConnection.java b/components/net/sf/briar/protocol/simplex/IncomingSimplexConnection.java index f05e8c5ec78836c426b79f367349721fb8ef43ef..a15c7bd8dd80d60a3adea1d2f09cec1613ac79da 100644 --- a/components/net/sf/briar/protocol/simplex/IncomingSimplexConnection.java +++ b/components/net/sf/briar/protocol/simplex/IncomingSimplexConnection.java @@ -88,7 +88,11 @@ class IncomingSimplexConnection { transport.dispose(false, true); } catch(IOException e) { if(LOG.isLoggable(Level.WARNING)) LOG.warning(e.toString()); - transport.dispose(true, true); + try { + transport.dispose(true, true); + } catch(IOException e1) { + if(LOG.isLoggable(Level.WARNING)) LOG.warning(e.toString()); + } } finally { connRegistry.unregisterConnection(contactId, transportId); } diff --git a/components/net/sf/briar/protocol/simplex/OutgoingSimplexConnection.java b/components/net/sf/briar/protocol/simplex/OutgoingSimplexConnection.java index 880f2f5584cab6c3ab8916a9169aed87e6238f61..6333a700ed8de6937a866d5e3d69e05b6bbdbac4 100644 --- a/components/net/sf/briar/protocol/simplex/OutgoingSimplexConnection.java +++ b/components/net/sf/briar/protocol/simplex/OutgoingSimplexConnection.java @@ -28,7 +28,7 @@ import net.sf.briar.api.transport.ConnectionWriterFactory; class OutgoingSimplexConnection { private static final Logger LOG = - Logger.getLogger(OutgoingSimplexConnection.class.getName()); + Logger.getLogger(OutgoingSimplexConnection.class.getName()); private final DatabaseComponent db; private final ConnectionRegistry connRegistry; @@ -103,10 +103,18 @@ class OutgoingSimplexConnection { transport.dispose(false); } catch(DbException e) { if(LOG.isLoggable(Level.WARNING)) LOG.warning(e.toString()); - transport.dispose(true); + try { + transport.dispose(true); + } catch(IOException e1) { + if(LOG.isLoggable(Level.WARNING)) LOG.warning(e.toString()); + } } catch(IOException e) { if(LOG.isLoggable(Level.WARNING)) LOG.warning(e.toString()); - transport.dispose(true); + try { + transport.dispose(true); + } catch(IOException e1) { + if(LOG.isLoggable(Level.WARNING)) LOG.warning(e.toString()); + } } finally { connRegistry.unregisterConnection(contactId, transportId); } diff --git a/components/net/sf/briar/transport/ConnectionDispatcherImpl.java b/components/net/sf/briar/transport/ConnectionDispatcherImpl.java index 4adbba871fad240f83426b1623a317a21f69d5f1..1ac49b86b79ad9a37bf4c2831bed09518578fb32 100644 --- a/components/net/sf/briar/transport/ConnectionDispatcherImpl.java +++ b/components/net/sf/briar/transport/ConnectionDispatcherImpl.java @@ -27,7 +27,7 @@ import com.google.inject.Inject; class ConnectionDispatcherImpl implements ConnectionDispatcher { private static final Logger LOG = - Logger.getLogger(ConnectionDispatcherImpl.class.getName()); + Logger.getLogger(ConnectionDispatcherImpl.class.getName()); private final Executor connExecutor; private final ConnectionRecogniser recogniser; @@ -96,10 +96,18 @@ class ConnectionDispatcherImpl implements ConnectionDispatcher { transport); } catch(DbException e) { if(LOG.isLoggable(Level.WARNING)) LOG.warning(e.toString()); - transport.dispose(true, false); + try { + transport.dispose(true, false); + } catch(IOException e1) { + if(LOG.isLoggable(Level.WARNING)) LOG.warning(e.toString()); + } } catch(IOException e) { if(LOG.isLoggable(Level.WARNING)) LOG.warning(e.toString()); - transport.dispose(true, false); + try { + transport.dispose(true, false); + } catch(IOException e1) { + if(LOG.isLoggable(Level.WARNING)) LOG.warning(e.toString()); + } } } }