[Pkg-owncloud-commits] [owncloud-client] 181/218: Propagation: Try another sync on 423 Locked #3387
Sandro Knauß
hefee-guest at moszumanska.debian.org
Sat Oct 17 14:31:06 UTC 2015
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 3cbd63a77a3b09c06f10ffb459b8966b14af4bab
Author: Christian Kamm <mail at ckamm.de>
Date: Wed Sep 30 15:34:50 2015 +0200
Propagation: Try another sync on 423 Locked #3387
(cherry picked from commit 24c41ed0da00b61e1bb761594147e463fabb7aa0)
---
src/libsync/owncloudpropagator_p.h | 5 ++++-
src/libsync/propagatedownload.cpp | 3 ++-
src/libsync/propagateremotedelete.cpp | 3 ++-
src/libsync/propagateremotemkdir.cpp | 3 ++-
src/libsync/propagateremotemove.cpp | 3 ++-
src/libsync/propagateupload.cpp | 4 +++-
6 files changed, 15 insertions(+), 6 deletions(-)
diff --git a/src/libsync/owncloudpropagator_p.h b/src/libsync/owncloudpropagator_p.h
index c3c68aa..293038a 100644
--- a/src/libsync/owncloudpropagator_p.h
+++ b/src/libsync/owncloudpropagator_p.h
@@ -49,7 +49,9 @@ inline QByteArray getEtagFromReply(QNetworkReply *reply)
/**
* Fiven an error from the network, map to a SyncFileItem::Status error
*/
-inline SyncFileItem::Status classifyError(QNetworkReply::NetworkError nerror, int httpCode) {
+inline SyncFileItem::Status classifyError(QNetworkReply::NetworkError nerror,
+ int httpCode,
+ bool* anotherSyncNeeded = NULL) {
Q_ASSERT (nerror != QNetworkReply::NoError); // we should only be called when there is an error
if (nerror > QNetworkReply::NoError && nerror <= QNetworkReply::UnknownProxyError) {
@@ -72,6 +74,7 @@ inline SyncFileItem::Status classifyError(QNetworkReply::NetworkError nerror, in
if (httpCode == 423) {
// "Locked"
// Should be temporary.
+ if (anotherSyncNeeded) { *anotherSyncNeeded = true; }
return SyncFileItem::SoftError;
}
diff --git a/src/libsync/propagatedownload.cpp b/src/libsync/propagatedownload.cpp
index e1e4ed4..799bba6 100644
--- a/src/libsync/propagatedownload.cpp
+++ b/src/libsync/propagatedownload.cpp
@@ -460,7 +460,8 @@ void PropagateDownloadFileQNAM::slotGetFinished()
SyncFileItem::Status status = job->errorStatus();
if (status == SyncFileItem::NoStatus) {
- status = classifyError(err, _item->_httpErrorCode);
+ status = classifyError(err, _item->_httpErrorCode,
+ &_propagator->_anotherSyncNeeded);
}
done(status, job->errorString());
diff --git a/src/libsync/propagateremotedelete.cpp b/src/libsync/propagateremotedelete.cpp
index 5f7fc89..6453706 100644
--- a/src/libsync/propagateremotedelete.cpp
+++ b/src/libsync/propagateremotedelete.cpp
@@ -95,7 +95,8 @@ void PropagateRemoteDelete::slotDeleteJobFinished()
return;
}
- SyncFileItem::Status status = classifyError(err, _item->_httpErrorCode);
+ SyncFileItem::Status status = classifyError(err, _item->_httpErrorCode,
+ &_propagator->_anotherSyncNeeded);
done(status, _job->errorString());
return;
}
diff --git a/src/libsync/propagateremotemkdir.cpp b/src/libsync/propagateremotemkdir.cpp
index 6d97ec1..019a2b1 100644
--- a/src/libsync/propagateremotemkdir.cpp
+++ b/src/libsync/propagateremotemkdir.cpp
@@ -57,7 +57,8 @@ void PropagateRemoteMkdir::slotMkcolJobFinished()
if (_item->_httpErrorCode == 405) {
// This happens when the directory already exist. Nothing to do.
} else if (err != QNetworkReply::NoError) {
- SyncFileItem::Status status = classifyError(err, _item->_httpErrorCode);
+ SyncFileItem::Status status = classifyError(err, _item->_httpErrorCode,
+ &_propagator->_anotherSyncNeeded);
auto errorString = _job->reply()->errorString();
if (_job->reply()->hasRawHeader("OC-ErrorString")) {
errorString = _job->reply()->rawHeader("OC-ErrorString");
diff --git a/src/libsync/propagateremotemove.cpp b/src/libsync/propagateremotemove.cpp
index 8b9af4e..8df44a7 100644
--- a/src/libsync/propagateremotemove.cpp
+++ b/src/libsync/propagateremotemove.cpp
@@ -128,7 +128,8 @@ void PropagateRemoteMove::slotMoveJobFinished()
return;
}
- SyncFileItem::Status status = classifyError(err, _item->_httpErrorCode);
+ SyncFileItem::Status status = classifyError(err, _item->_httpErrorCode,
+ &_propagator->_anotherSyncNeeded);
done(status, _job->errorString());
return;
}
diff --git a/src/libsync/propagateupload.cpp b/src/libsync/propagateupload.cpp
index 0ef14c0..e90fee6 100644
--- a/src/libsync/propagateupload.cpp
+++ b/src/libsync/propagateupload.cpp
@@ -582,7 +582,9 @@ void PropagateUploadFileQNAM::slotPutFinished()
_propagator->_anotherSyncNeeded = true;
}
- abortWithError(classifyError(err, _item->_httpErrorCode), errorString);
+ SyncFileItem::Status status = classifyError(err, _item->_httpErrorCode,
+ &_propagator->_anotherSyncNeeded);
+ abortWithError(status, errorString);
return;
}
--
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