Fixed error when closing a failed websocket connection

This commit is contained in:
Marcel Baumgartner
2023-06-04 21:41:15 +02:00
parent 343e527fb6
commit 233c304b3c

View File

@@ -142,18 +142,28 @@ public class WingsConsole : IDisposable
switch (eventData.Event) switch (eventData.Event)
{ {
case "jwt error": case "jwt error":
await WebSocket.CloseAsync(WebSocketCloseStatus.Empty, "Jwt error detected", if (WebSocket != null)
CancellationToken.None); {
if (WebSocket.State == WebSocketState.Connecting || WebSocket.State == WebSocketState.Open)
await WebSocket.CloseAsync(WebSocketCloseStatus.Empty, null, CancellationToken.None);
WebSocket.Dispose();
}
await UpdateServerState(ServerState.Offline); await UpdateServerState(ServerState.Offline);
await UpdateConsoleState(ConsoleState.Disconnected); await UpdateConsoleState(ConsoleState.Disconnected);
await SaveMessage("Received a jwt error", true); await SaveMessage("Received a jwt error. Disconnected", true);
break; break;
case "token expired": case "token expired":
await WebSocket.CloseAsync(WebSocketCloseStatus.Empty, "Jwt error detected", if (WebSocket != null)
CancellationToken.None); {
if (WebSocket.State == WebSocketState.Connecting || WebSocket.State == WebSocketState.Open)
await WebSocket.CloseAsync(WebSocketCloseStatus.Empty, null, CancellationToken.None);
WebSocket.Dispose();
}
await UpdateServerState(ServerState.Offline); await UpdateServerState(ServerState.Offline);
await UpdateConsoleState(ConsoleState.Disconnected); await UpdateConsoleState(ConsoleState.Disconnected);