diff --git a/src/Discord.Net.WebSocket/ConnectionManager.cs b/src/Discord.Net.WebSocket/ConnectionManager.cs index c90448735..751ec8314 100644 --- a/src/Discord.Net.WebSocket/ConnectionManager.cs +++ b/src/Discord.Net.WebSocket/ConnectionManager.cs @@ -106,11 +106,13 @@ namespace Discord finally { _stateLock.Release(); } }); } - public virtual Task StopAsync() + + public virtual async Task StopAsync() { Cancel(); - _task?.ConfigureAwait(false).GetAwaiter().GetResult(); - return Task.CompletedTask; + + if (_task != null) + await _task.ConfigureAwait(false); } private async Task ConnectAsync(CancellationTokenSource reconnectCancelToken)