diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/WebSocketsTransport.cs b/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/WebSocketsTransport.cs index cb7ed9f06c..4fe1e61b73 100644 --- a/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/WebSocketsTransport.cs +++ b/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/WebSocketsTransport.cs @@ -119,7 +119,15 @@ namespace Microsoft.AspNetCore.Http.Connections.Client.Internal Log.StartTransport(_logger, transferFormat, resolvedUrl); - await _webSocket.ConnectAsync(resolvedUrl, CancellationToken.None); + try + { + await _webSocket.ConnectAsync(resolvedUrl, CancellationToken.None); + } + catch + { + _webSocket.Dispose(); + throw; + } Log.StartedTransport(_logger);