diff --git a/projects/client/RabbitMQ.Client/src/client/impl/SocketFrameHandler_0_9.cs b/projects/client/RabbitMQ.Client/src/client/impl/SocketFrameHandler_0_9.cs index 606883d31a..f698d22363 100644 --- a/projects/client/RabbitMQ.Client/src/client/impl/SocketFrameHandler_0_9.cs +++ b/projects/client/RabbitMQ.Client/src/client/impl/SocketFrameHandler_0_9.cs @@ -150,8 +150,16 @@ public void WriteFrame(Frame frame) public void Close() { - m_socket.LingerState = new LingerOption(true, SOCKET_CLOSING_TIMEOUT); - m_socket.Close(); + try + { + m_socket.LingerState = new LingerOption(true, SOCKET_CLOSING_TIMEOUT); + m_socket.Close(); + } + catch (ObjectDisposedException) + { + // Ignore the exception if the socket is already closed/disposed + return; + } } } }