Added while loop to MakeAuthAsync method. (#477)

fix PhoneMigrationException by reconnecting to DC on the error .
(fix for #458)
This commit is contained in:
AmiNadim 2017-05-18 17:36:33 +04:30 committed by Andres G. Aragoneses
parent 97a593e25e
commit 0d55940c12

View file

@ -166,8 +166,22 @@ namespace TLSharp.Core
throw new ArgumentNullException(nameof(code));
var request = new TLRequestSignIn() { phone_number = phoneNumber, phone_code_hash = phoneCodeHash, phone_code = code };
var completed = false;
while (!completed)
{
try
{
await _sender.Send(request);
await _sender.Receive(request);
completed = true;
}
catch (PhoneMigrationException e)
{
await ReconnectToDcAsync(e.DC);
}
}
OnUserAuthenticated(((TLUser)request.Response.user));