diff options
author | Robert Gemmell <robbie@apache.org> | 2012-12-04 20:08:07 +0000 |
---|---|---|
committer | Robert Gemmell <robbie@apache.org> | 2012-12-04 20:08:07 +0000 |
commit | 615591405aab9b974032f20f388f435bbab4fa8b (patch) | |
tree | 359dde739458761d35ee7d1170bed51029e21f10 | |
parent | f223632243ebe462ec9403fe4b04d7ef0618a3cb (diff) | |
download | qpid-python-615591405aab9b974032f20f388f435bbab4fa8b.tar.gz |
QPID-4489: ensure the IoSender is closed when the IoReceiver closes before a protocol version initiation is received
merge from trunk r1416716
git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/0.20@1417145 13f79535-47bb-0310-9956-ffa450edef68
-rwxr-xr-x | qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/MultiVersionProtocolEngine.java | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/MultiVersionProtocolEngine.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/MultiVersionProtocolEngine.java index c8126b3677..b0465c731e 100755 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/MultiVersionProtocolEngine.java +++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/MultiVersionProtocolEngine.java @@ -573,7 +573,29 @@ public class MultiVersionProtocolEngine implements ServerProtocolEngine public void closed() { - + try + { + _delegate = new ClosedDelegateProtocolEngine(); + if(_logger.isDebugEnabled()) + { + _logger.debug("Connection from " + getRemoteAddress() + " was closed before any protocol version was established."); + } + } + catch(Exception e) + { + //ignore + } + finally + { + try + { + _network.close(); + } + catch(Exception e) + { + //ignore + } + } } public void writerIdle() |