[Pkg-owncloud-commits] [owncloud-client] 96/219: ConnecitonValidator: Handle the timeout
Sandro Knauß
hefee-guest at moszumanska.debian.org
Sat Oct 11 14:43:14 UTC 2014
This is an automated email from the git hooks/post-receive script.
hefee-guest pushed a commit to branch master
in repository owncloud-client.
commit 52e8343f768d5c8b8c5f62a89ea27e06134575a5
Author: Olivier Goffart <ogoffart at woboq.com>
Date: Fri Sep 12 17:58:01 2014 +0200
ConnecitonValidator: Handle the timeout
otherwise the account may be stuck in a disconnect case if there is a timeout
Issue #2148
---
src/mirall/connectionvalidator.cpp | 11 +++++++++++
src/mirall/connectionvalidator.h | 1 +
src/mirall/networkjobs.cpp | 1 +
3 files changed, 13 insertions(+)
diff --git a/src/mirall/connectionvalidator.cpp b/src/mirall/connectionvalidator.cpp
index 24954f5..af727cb 100644
--- a/src/mirall/connectionvalidator.cpp
+++ b/src/mirall/connectionvalidator.cpp
@@ -85,6 +85,7 @@ void ConnectionValidator::checkConnection()
checkJob->setIgnoreCredentialFailure(true);
connect(checkJob, SIGNAL(instanceFound(QUrl,QVariantMap)), SLOT(slotStatusFound(QUrl,QVariantMap)));
connect(checkJob, SIGNAL(networkError(QNetworkReply*)), SLOT(slotNoStatusFound(QNetworkReply*)));
+ connect(checkJob, SIGNAL(timeout(QUrl)), SLOT(slotStatusTimeout(QUrl)));
checkJob->start();
} else {
_errors << tr("No ownCloud account configured");
@@ -127,9 +128,19 @@ void ConnectionValidator::slotNoStatusFound(QNetworkReply *reply)
_errors.append( reply->errorString() );
_networkError = (reply->error() != QNetworkReply::NoError);
emit connectionResult( StatusNotFound );
+}
+
+void ConnectionValidator::slotStatusTimeout(const QUrl &url)
+{
+ _account->setState(Account::Disconnected);
+ _errors.append(tr("Unable to connect to %1").arg(url.toString()));
+ _errors.append(tr("timeout"));
+ _networkError = true;
+ emit connectionResult( StatusNotFound );
}
+
void ConnectionValidator::slotCheckAuthentication()
{
AbstractCredentials *creds = _account->credentials();
diff --git a/src/mirall/connectionvalidator.h b/src/mirall/connectionvalidator.h
index e930ccd..e1c7b07 100644
--- a/src/mirall/connectionvalidator.h
+++ b/src/mirall/connectionvalidator.h
@@ -60,6 +60,7 @@ public slots:
protected slots:
void slotStatusFound(const QUrl&url, const QVariantMap &info);
void slotNoStatusFound(QNetworkReply *reply);
+ void slotStatusTimeout(const QUrl& url);
void slotCheckAuthentication();
void slotAuthFailed(QNetworkReply *reply);
diff --git a/src/mirall/networkjobs.cpp b/src/mirall/networkjobs.cpp
index cf58a6a..fd0ee98 100644
--- a/src/mirall/networkjobs.cpp
+++ b/src/mirall/networkjobs.cpp
@@ -359,6 +359,7 @@ void CheckServerJob::slotTimeout()
qDebug() << "TIMEOUT" << Q_FUNC_INFO;
if (reply()->isRunning())
emit timeout(reply()->url());
+ deleteLater();
}
QString CheckServerJob::version(const QVariantMap &info)
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-owncloud/owncloud-client.git
More information about the Pkg-owncloud-commits
mailing list