Skip to content

Commit

Permalink
Fix VoiceWebSocket assuming 1000 is a fatal close code
Browse files Browse the repository at this point in the history
  • Loading branch information
Francessco121 committed Oct 21, 2017
1 parent 99abb66 commit a6ab4ca
Showing 1 changed file with 8 additions and 1 deletion.
9 changes: 8 additions & 1 deletion src/Discore/Voice/Net/VoiceWebSocket.cs
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,9 @@ await base.DisconnectAsync(closeStatus, statusDescription, cancellationToken)

protected override void OnCloseReceived(WebSocketCloseStatus closeStatus, string closeDescription)
{
if (closeStatus == WebSocketCloseStatus.NormalClosure)
return;

VoiceCloseCode voiceCloseCode = (VoiceCloseCode)closeStatus;
switch (voiceCloseCode)
{
Expand All @@ -78,7 +81,11 @@ protected override void OnCloseReceived(WebSocketCloseStatus closeStatus, string
OnNewSessionRequested?.Invoke(this, EventArgs.Empty);
break;
default:
log.LogVerbose($"Fatal close code: {voiceCloseCode} ({(int)voiceCloseCode})");
if ((int)voiceCloseCode >= 4000)
log.LogVerbose($"Fatal close code: {voiceCloseCode} ({(int)voiceCloseCode}), {closeDescription}");
else
log.LogVerbose($"Fatal close code: {closeStatus} ({(int)closeStatus}), {closeDescription}");

OnUnexpectedClose?.Invoke(this, EventArgs.Empty);
break;
}
Expand Down

0 comments on commit a6ab4ca

Please sign in to comment.