diff --git a/core/java/src/net/i2p/client/I2PSessionImpl.java b/core/java/src/net/i2p/client/I2PSessionImpl.java index 33c8adfe48de0463e0216a2716d6753bbd610afc..f14686e5620d1f52378e34c50e450a0f754666c3 100644 --- a/core/java/src/net/i2p/client/I2PSessionImpl.java +++ b/core/java/src/net/i2p/client/I2PSessionImpl.java @@ -447,7 +447,6 @@ abstract class I2PSessionImpl implements I2PSession, I2CPMessageReader.I2CPMessa if (_closed) return; if (_log.shouldLog(Log.DEBUG)) _log.debug("Destroy the session", new Exception("DestroySession()")); - _closed = true; if (sendDisconnect) { try { _producer.disconnect(this); @@ -455,6 +454,7 @@ abstract class I2PSessionImpl implements I2PSession, I2CPMessageReader.I2CPMessa propogateError("Error destroying the session", ipe); } } + _closed = true; closeSocket(); if (_sessionListener != null) _sessionListener.disconnected(this); }