Fixed several issues with tokens cache
This commit is contained in:
@@ -226,25 +226,26 @@ namespace Discord
|
||||
byte[] cacheKey = null;
|
||||
|
||||
//Get Token
|
||||
if (token == null && Config.CacheToken)
|
||||
if (email != null && Config.CacheToken)
|
||||
{
|
||||
Rfc2898DeriveBytes deriveBytes = new Rfc2898DeriveBytes(password,
|
||||
new byte[] { 0x5A, 0x2A, 0xF8, 0xCF, 0x78, 0xD3, 0x7D, 0x0D });
|
||||
cacheKey = deriveBytes.GetBytes(16);
|
||||
|
||||
tokenPath = GetTokenCachePath(email);
|
||||
oldToken = LoadToken(tokenPath, cacheKey);
|
||||
ClientAPI.Token = oldToken;
|
||||
if (token == null && password != null)
|
||||
{
|
||||
Rfc2898DeriveBytes deriveBytes = new Rfc2898DeriveBytes(password,
|
||||
new byte[] { 0x5A, 0x2A, 0xF8, 0xCF, 0x78, 0xD3, 0x7D, 0x0D });
|
||||
cacheKey = deriveBytes.GetBytes(16);
|
||||
|
||||
oldToken = LoadToken(tokenPath, cacheKey);
|
||||
token = oldToken;
|
||||
}
|
||||
}
|
||||
else
|
||||
ClientAPI.Token = token;
|
||||
|
||||
|
||||
ClientAPI.Token = token;
|
||||
var request = new LoginRequest() { Email = email, Password = password };
|
||||
var response = await ClientAPI.Send(request).ConfigureAwait(false);
|
||||
token = response.Token;
|
||||
if (Config.CacheToken && token != oldToken)
|
||||
if (Config.CacheToken && token != oldToken && tokenPath != null)
|
||||
SaveToken(tokenPath, cacheKey, token);
|
||||
|
||||
ClientAPI.Token = token;
|
||||
|
||||
//Cache other stuff
|
||||
|
||||
Reference in New Issue
Block a user