Fixed LeaveVoiceServer when Multiserver is disabled
This commit is contained in:
@@ -798,10 +798,18 @@ namespace Discord
|
||||
CheckReady(); //checkVoice is done inside the voice client
|
||||
if (serverId == null) throw new ArgumentNullException(nameof(serverId));
|
||||
|
||||
DiscordSimpleClient client;
|
||||
if (_voiceClients.TryRemove(serverId, out client))
|
||||
await client.Disconnect();
|
||||
}
|
||||
if (Config.EnableVoiceMultiserver)
|
||||
{
|
||||
DiscordSimpleClient client;
|
||||
if (_voiceClients.TryRemove(serverId, out client))
|
||||
await client.Disconnect();
|
||||
}
|
||||
else
|
||||
{
|
||||
_dataSocket.SendLeaveVoice(serverId);
|
||||
await _voiceSocket.Disconnect();
|
||||
}
|
||||
}
|
||||
|
||||
private void SendInitialLog()
|
||||
{
|
||||
|
||||
@@ -248,10 +248,15 @@ namespace Discord
|
||||
|
||||
protected virtual async Task Cleanup()
|
||||
{
|
||||
await _dataSocket.Disconnect().ConfigureAwait(false);
|
||||
if (_enableVoice)
|
||||
{
|
||||
string voiceServerId = _voiceSocket.CurrentServerId;
|
||||
if (voiceServerId != null)
|
||||
_dataSocket.SendLeaveVoice(voiceServerId);
|
||||
await _voiceSocket.Disconnect().ConfigureAwait(false);
|
||||
|
||||
}
|
||||
await _dataSocket.Disconnect().ConfigureAwait(false);
|
||||
|
||||
_currentUserId = null;
|
||||
_gateway = null;
|
||||
_token = null;
|
||||
|
||||
Reference in New Issue
Block a user