diff options
| author | Claus Vium <clausvium@gmail.com> | 2019-02-27 21:48:28 +0100 |
|---|---|---|
| committer | Claus Vium <clausvium@gmail.com> | 2019-02-27 21:48:28 +0100 |
| commit | dab8e150520f5a76d875a926530632783e17006f (patch) | |
| tree | 0b34165cdc2d5688d43d1ce05646308d464f0fe3 /Emby.Server.Implementations/SocketSharp/WebSocketSharpListener.cs | |
| parent | e47d12198556abfbfb57d2c1a9e45f6f7230bf63 (diff) | |
Check websocket state before closing
Diffstat (limited to 'Emby.Server.Implementations/SocketSharp/WebSocketSharpListener.cs')
| -rw-r--r-- | Emby.Server.Implementations/SocketSharp/WebSocketSharpListener.cs | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/Emby.Server.Implementations/SocketSharp/WebSocketSharpListener.cs b/Emby.Server.Implementations/SocketSharp/WebSocketSharpListener.cs index c5abad5d3..9422673f5 100644 --- a/Emby.Server.Implementations/SocketSharp/WebSocketSharpListener.cs +++ b/Emby.Server.Implementations/SocketSharp/WebSocketSharpListener.cs @@ -93,8 +93,12 @@ using Microsoft.Extensions.Logging; } while (socket.State == WebSocketState.Open && result.MessageType != WebSocketMessageType.Close); - await webSocketContext.CloseAsync(result.CloseStatus ?? WebSocketCloseStatus.NormalClosure, - result.CloseStatusDescription, _disposeCancellationToken); + if (webSocketContext.State == WebSocketState.Open) + { + await webSocketContext.CloseAsync(result.CloseStatus ?? WebSocketCloseStatus.NormalClosure, + result.CloseStatusDescription, _disposeCancellationToken); + } + socket.Dispose(); } else |
