From b1ba687a1d9f98faff974fdced119cd545d40c1b Mon Sep 17 00:00:00 2001 From: Dirk Hohndel Date: Tue, 10 Sep 2019 11:26:09 +0100 Subject: Mobile: deal better with incorrect credentials This could happen if the password was changed from a different Subsurface instance. Signed-off-by: Dirk Hohndel --- mobile-widgets/qmlmanager.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'mobile-widgets/qmlmanager.cpp') diff --git a/mobile-widgets/qmlmanager.cpp b/mobile-widgets/qmlmanager.cpp index ea0f52c6c..8dcacf4cc 100644 --- a/mobile-widgets/qmlmanager.cpp +++ b/mobile-widgets/qmlmanager.cpp @@ -291,8 +291,9 @@ void QMLManager::openLocalThenRemote(QString url) * care about this, as the very first commit of dive data to the * no cloud repo solves this. */ - - if (QMLPrefs::instance()->credentialStatus() != qPrefCloudStorage::CS_NOCLOUD) + auto credStatus = QMLPrefs::instance()->credentialStatus(); + if (credStatus != qPrefCloudStorage::CS_NOCLOUD && + credStatus != qPrefCloudStorage::CS_INCORRECT_USER_PASSWD) QMLPrefs::instance()->setCredentialStatus(qPrefCloudStorage::CS_NEED_TO_VERIFY); } else { // if we can load from the cache, we know that we have a valid cloud account @@ -317,6 +318,10 @@ void QMLManager::openLocalThenRemote(QString url) appendTextToLog(QStringLiteral("have cloud credentials, but still needs PIN")); QMLPrefs::instance()->setShowPin(true); } + if (QMLPrefs::instance()->credentialStatus() == qPrefCloudStorage::CS_INCORRECT_USER_PASSWD) { + appendTextToLog(QStringLiteral("incorrect password for cloud credentials")); + setNotificationText(tr("Incorrect cloud credentials")); + } if (QMLPrefs::instance()->oldStatus() == qPrefCloudStorage::CS_NOCLOUD) { // if we switch to credentials from CS_NOCLOUD, we take things online temporarily git_local_only = false; -- cgit v1.2.3-70-g09d2