diff options
Diffstat (limited to 'java/common/src')
-rw-r--r-- | java/common/src/main/java/org/apache/qpid/transport/network/io/IoReceiver.java | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/java/common/src/main/java/org/apache/qpid/transport/network/io/IoReceiver.java b/java/common/src/main/java/org/apache/qpid/transport/network/io/IoReceiver.java index 0ab195ced8..fa2711ddde 100644 --- a/java/common/src/main/java/org/apache/qpid/transport/network/io/IoReceiver.java +++ b/java/common/src/main/java/org/apache/qpid/transport/network/io/IoReceiver.java @@ -243,7 +243,12 @@ final class IoReceiver implements Runnable, Closeable t instanceof SocketException && "Socket is closed".equalsIgnoreCase(t.getMessage()); - return !brokenClose && !sslSocketClosed; + boolean recvFailed = closed.get() && + shutdownBroken && + t instanceof SocketException && + "Socket operation on nonsocket: recv failed".equalsIgnoreCase(t.getMessage()); + + return !brokenClose && !sslSocketClosed && !recvFailed; } public Ticker getTicker() |