From 25d1ee88621f82ceebd771d6dae814713c2fefc7 Mon Sep 17 00:00:00 2001 From: Craig Wilson Date: Wed, 10 Aug 2016 13:33:47 -0500 Subject: [PATCH] CSHARP-1704: disposing of sockets in failure scenarios. --- .../Core/Connections/TcpStreamFactory.cs | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/src/MongoDB.Driver.Core/Core/Connections/TcpStreamFactory.cs b/src/MongoDB.Driver.Core/Core/Connections/TcpStreamFactory.cs index 43e3885a47a..9cfcb754ebe 100644 --- a/src/MongoDB.Driver.Core/Core/Connections/TcpStreamFactory.cs +++ b/src/MongoDB.Driver.Core/Core/Connections/TcpStreamFactory.cs @@ -150,16 +150,13 @@ private void Connect(Socket socket, EndPoint endPoint, CancellationToken cancell { if (!cancelled && !timedOut) { - socket.Dispose(); + try { socket.Dispose(); } catch { } throw; } } } - if (socket.Connected) - { - try { socket.Dispose(); } catch { } - } + try { socket.Dispose(); } catch { } cancellationToken.ThrowIfCancellationRequested(); if (timedOut) @@ -201,16 +198,13 @@ private async Task ConnectAsync(Socket socket, EndPoint endPoint, CancellationTo { if (!cancelled && !timedOut) { - socket.Dispose(); + try { socket.Dispose(); } catch { } throw; } } } - if (socket.Connected) - { - try { socket.Dispose(); } catch { } - } + try { socket.Dispose(); } catch { } cancellationToken.ThrowIfCancellationRequested(); if (timedOut)