Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/owncloud/client.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/accountstate.cpp')
-rw-r--r--src/gui/accountstate.cpp28
1 files changed, 13 insertions, 15 deletions
diff --git a/src/gui/accountstate.cpp b/src/gui/accountstate.cpp
index d2ae79394..cdab097f7 100644
--- a/src/gui/accountstate.cpp
+++ b/src/gui/accountstate.cpp
@@ -385,23 +385,21 @@ void AccountState::slotConnectionValidatorResult(ConnectionValidator::Status sta
void AccountState::slotInvalidCredentials()
{
- if (isSignedOut() || _waitingForNewCredentials)
- return;
-
- qCInfo(lcAccountState) << "Invalid credentials for" << _account->url().toString()
- << "asking user";
+ if (!_waitingForNewCredentials) {
+ qCInfo(lcAccountState) << "Invalid credentials for" << _account->url().toString()
+ << "asking user";
- _waitingForNewCredentials = true;
- setState(AskingCredentials);
-
- if (account()->credentials()->ready()) {
- account()->credentials()->invalidateToken();
- }
- if (auto creds = qobject_cast<HttpCredentials *>(account()->credentials())) {
- if (creds->refreshAccessToken())
- return;
+ _waitingForNewCredentials = true;
+ if (account()->credentials()->ready()) {
+ account()->credentials()->invalidateToken();
+ }
+ if (auto creds = qobject_cast<HttpCredentials *>(account()->credentials())) {
+ if (creds->refreshAccessToken())
+ return;
+ }
+ account()->credentials()->askFromUser();
}
- account()->credentials()->askFromUser();
+ setState(AskingCredentials);
}
void AccountState::slotCredentialsFetched(AbstractCredentials *)