| @@ -634,6 +634,10 @@ namespace Discord | |||||
| if (_state != (int)DiscordClientState.Disconnected) | if (_state != (int)DiscordClientState.Disconnected) | ||||
| await Disconnect().ConfigureAwait(false); | await Disconnect().ConfigureAwait(false); | ||||
| _cancelTokenSource = new CancellationTokenSource(); | |||||
| _cancelToken = _cancelTokenSource.Token; | |||||
| _api.CancelToken = _cancelToken; | |||||
| await ConnectInternal(token) | await ConnectInternal(token) | ||||
| .Timeout(_config.ConnectionTimeout) | .Timeout(_config.ConnectionTimeout) | ||||
| .ConfigureAwait(false); | .ConfigureAwait(false); | ||||
| @@ -645,6 +649,10 @@ namespace Discord | |||||
| if (_state != (int)DiscordClientState.Disconnected) | if (_state != (int)DiscordClientState.Disconnected) | ||||
| await Disconnect().ConfigureAwait(false); | await Disconnect().ConfigureAwait(false); | ||||
| _cancelTokenSource = new CancellationTokenSource(); | |||||
| _cancelToken = _cancelTokenSource.Token; | |||||
| _api.CancelToken = _cancelToken; | |||||
| string token; | string token; | ||||
| try | try | ||||
| { | { | ||||
| @@ -664,10 +672,7 @@ namespace Discord | |||||
| try | try | ||||
| { | { | ||||
| _disconnectedEvent.Reset(); | _disconnectedEvent.Reset(); | ||||
| _cancelTokenSource = new CancellationTokenSource(); | |||||
| _cancelToken = _cancelTokenSource.Token; | |||||
| _api.Token = token; | _api.Token = token; | ||||
| _api.CancelToken = _cancelToken; | |||||
| _token = token; | _token = token; | ||||
| _state = (int)DiscordClientState.Connecting; | _state = (int)DiscordClientState.Connecting; | ||||