From: Christian Kamm Date: Fri, 15 Sep 2017 07:11:52 +0000 (+0200) Subject: Reduce timeout for some admin jobs X-Git-Tag: archive/raspbian/3.16.7-1_deb13u1+rpi1~1^2~701^2~96 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=78b082a23c9e30120c332cf456b4bd0fe8967825;p=nextcloud-desktop.git Reduce timeout for some admin jobs The oauth token jobs and the wizard redirect check job shouldn't have 5min timeouts. --- diff --git a/src/gui/creds/oauth.cpp b/src/gui/creds/oauth.cpp index 386f90190..0155b0810 100644 --- a/src/gui/creds/oauth.cpp +++ b/src/gui/creds/oauth.cpp @@ -91,6 +91,7 @@ void OAuth::start() requestBody->setData(arguments.query(QUrl::FullyEncoded).toLatin1()); auto job = _account->sendRequest("POST", requestToken, req, requestBody); + job->setTimeout(qMin(30 * 1000ll, job->timeoutMsec())); QObject::connect(job, &SimpleNetworkJob::finishedSignal, this, [this, socket](QNetworkReply *reply) { auto jsonData = reply->readAll(); QJsonParseError jsonParseError; diff --git a/src/gui/owncloudsetupwizard.cpp b/src/gui/owncloudsetupwizard.cpp index 3dd3bb117..33e55cb14 100644 --- a/src/gui/owncloudsetupwizard.cpp +++ b/src/gui/owncloudsetupwizard.cpp @@ -180,6 +180,10 @@ void OwncloudSetupWizard::slotContinueDetermineAuth() // redirect subpaths. auto redirectCheckJob = account->sendRequest("GET", account->url()); + // Use a significantly reduced timeout for this redirect check: + // the 5-minute default is inappropriate. + redirectCheckJob->setTimeout(qMin(2000ll, redirectCheckJob->timeoutMsec())); + // Grab the chain of permanent redirects and adjust the account url // accordingly auto permanentRedirects = std::make_shared(0); diff --git a/src/libsync/creds/httpcredentials.cpp b/src/libsync/creds/httpcredentials.cpp index a183ff5fb..54a73fbf2 100644 --- a/src/libsync/creds/httpcredentials.cpp +++ b/src/libsync/creds/httpcredentials.cpp @@ -356,6 +356,7 @@ bool HttpCredentials::refreshAccessToken() requestBody->setData(arguments.query(QUrl::FullyEncoded).toLatin1()); auto job = _account->sendRequest("POST", requestToken, req, requestBody); + job->setTimeout(qMin(30 * 1000ll, job->timeoutMsec())); QObject::connect(job, &SimpleNetworkJob::finishedSignal, this, [this](QNetworkReply *reply) { auto jsonData = reply->readAll(); QJsonParseError jsonParseError;