From d9b578a4ec0a73e3c738610a6a6d79955a07a5bd Mon Sep 17 00:00:00 2001 From: Aidan Skinner Date: Thu, 20 Mar 2008 11:29:56 +0000 Subject: QPID-854 Resynchronise the _acceptor so that we don't hang git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2.1@639251 13f79535-47bb-0310-9956-ffa450edef68 --- .../org/apache/qpid/client/transport/TransportConnection.java | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) (limited to 'java/client/src') diff --git a/java/client/src/main/java/org/apache/qpid/client/transport/TransportConnection.java b/java/client/src/main/java/org/apache/qpid/client/transport/TransportConnection.java index 2a5365c322..7ae2ddf66c 100644 --- a/java/client/src/main/java/org/apache/qpid/client/transport/TransportConnection.java +++ b/java/client/src/main/java/org/apache/qpid/client/transport/TransportConnection.java @@ -332,21 +332,18 @@ public class TransportConnection public static void killVMBroker(int port) { - VmPipeAddress pipe; synchronized (_inVmPipeAddress) { - pipe = (VmPipeAddress) _inVmPipeAddress.get(port); + VmPipeAddress pipe = (VmPipeAddress) _inVmPipeAddress.get(port); if (pipe != null) { _logger.info("Killing VM Broker:" + port); _inVmPipeAddress.remove(port); + // This does need to be sychronized as otherwise mina can hang + // if a new connection is made + _acceptor.unbind(pipe); } } - //This doesn't need to be sychronized - if (pipe != null) - { - _acceptor.unbind(pipe); - } } } -- cgit v1.2.1