From cac887f7f12f3622a7f30cd75e594500ba940f15 Mon Sep 17 00:00:00 2001 From: RogueException Date: Sat, 26 Sep 2015 12:11:46 -0300 Subject: [PATCH] Fixed reconnect bug --- src/Discord.Net/DiscordClient.cs | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/Discord.Net/DiscordClient.cs b/src/Discord.Net/DiscordClient.cs index 08225bc53..df8dc2027 100644 --- a/src/Discord.Net/DiscordClient.cs +++ b/src/Discord.Net/DiscordClient.cs @@ -634,6 +634,10 @@ namespace Discord if (_state != (int)DiscordClientState.Disconnected) await Disconnect().ConfigureAwait(false); + _cancelTokenSource = new CancellationTokenSource(); + _cancelToken = _cancelTokenSource.Token; + _api.CancelToken = _cancelToken; + await ConnectInternal(token) .Timeout(_config.ConnectionTimeout) .ConfigureAwait(false); @@ -645,6 +649,10 @@ namespace Discord if (_state != (int)DiscordClientState.Disconnected) await Disconnect().ConfigureAwait(false); + _cancelTokenSource = new CancellationTokenSource(); + _cancelToken = _cancelTokenSource.Token; + _api.CancelToken = _cancelToken; + string token; try { @@ -664,10 +672,7 @@ namespace Discord try { _disconnectedEvent.Reset(); - _cancelTokenSource = new CancellationTokenSource(); - _cancelToken = _cancelTokenSource.Token; _api.Token = token; - _api.CancelToken = _cancelToken; _token = token; _state = (int)DiscordClientState.Connecting;