diff --git a/td/telegram/AuthManager.cpp b/td/telegram/AuthManager.cpp index f67df34d5..878369d41 100644 --- a/td/telegram/AuthManager.cpp +++ b/td/telegram/AuthManager.cpp @@ -542,7 +542,12 @@ void AuthManager::on_get_login_token(tl_object_ptr(result->ok()); + Result> r_password; + if (result->is_error()) { + r_password = std::move(result->error()); + } else { + r_password = fetch_result(result->ok()); + } if (r_password.is_error() && query_id_ != 0) { return on_query_error(r_password.move_as_error()); } @@ -796,7 +801,9 @@ void AuthManager::on_result(NetQueryPtr result) { on_query_error(std::move(result->error())); return; } - if (type != NetQueryType::RequestQrCode && type != NetQueryType::ImportQrCode) { + if (type != NetQueryType::RequestQrCode && type != NetQueryType::ImportQrCode && + type != NetQueryType::GetPassword) { + LOG(INFO) << "Ignore error for net query of type " << static_cast(net_query_type_); return; } } diff --git a/td/telegram/net/NetQueryDispatcher.cpp b/td/telegram/net/NetQueryDispatcher.cpp index 9f126b4d9..e87477822 100644 --- a/td/telegram/net/NetQueryDispatcher.cpp +++ b/td/telegram/net/NetQueryDispatcher.cpp @@ -51,6 +51,10 @@ void NetQueryDispatcher::dispatch(NetQueryPtr net_query) { net_query->set_error(Status::Error(429, "Too Many Requests: retry after 10")); return complete_net_query(std::move(net_query)); } + if (net_query->tl_constructor() == telegram_api::account_getPassword::ID && false) { + net_query->set_error(Status::Error(429, "Too Many Requests: retry after 10")); + return complete_net_query(std::move(net_query)); + } if (net_query->is_ready()) { if (net_query->is_error()) {