Moved IAsyncDisposable and IDisposable from WebSocketConnection to it's interface. Added private variable and guard statement to avoid disposing of WebSocketConnection unnecessarily.

This commit is contained in:
Luke Brown
2022-05-18 21:04:22 -05:00
parent 8d0024ec49
commit abfbd04782
2 changed files with 12 additions and 6 deletions

View File

@@ -99,6 +99,7 @@ namespace Emby.Server.Implementations.Session
foreach (var socket in _sockets)
{
socket.Closed -= OnConnectionClosed;
socket.Dispose();
}
_disposed = true;
@@ -114,11 +115,7 @@ namespace Emby.Server.Implementations.Session
foreach (var socket in _sockets)
{
socket.Closed -= OnConnectionClosed;
if (socket is IAsyncDisposable disposableAsync)
{
await disposableAsync.DisposeAsync().ConfigureAwait(false);
}
await socket.DisposeAsync().ConfigureAwait(false);
}
_disposed = true;