[Pkg-owncloud-commits] [owncloud-client] 399/470: Checksums: Use the first supported type if nothing is preferred
Sandro Knauß
hefee-guest at moszumanska.debian.org
Thu May 12 16:25:32 UTC 2016
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 09eea7f5f2a36f6188e5e361c666e61f1fd98244
Author: Christian Kamm <mail at ckamm.de>
Date: Tue Apr 26 13:10:53 2016 +0200
Checksums: Use the first supported type if nothing is preferred
---
src/libsync/capabilities.cpp | 11 +++++++++++
src/libsync/capabilities.h | 7 +++++++
src/libsync/propagateupload.cpp | 2 +-
3 files changed, 19 insertions(+), 1 deletion(-)
diff --git a/src/libsync/capabilities.cpp b/src/libsync/capabilities.cpp
index 0dfff76..7e4ff52 100644
--- a/src/libsync/capabilities.cpp
+++ b/src/libsync/capabilities.cpp
@@ -95,4 +95,15 @@ QByteArray Capabilities::preferredUploadChecksumType() const
return _capabilities["checksums"].toMap()["preferredUploadType"].toByteArray();
}
+QByteArray Capabilities::uploadChecksumType() const
+{
+ QByteArray preferred = preferredUploadChecksumType();
+ if (!preferred.isEmpty())
+ return preferred;
+ QList<QByteArray> supported = supportedChecksumTypes();
+ if (!supported.isEmpty())
+ return supported.first();
+ return QByteArray();
+}
+
}
diff --git a/src/libsync/capabilities.h b/src/libsync/capabilities.h
index 70290bf..04eef6e 100644
--- a/src/libsync/capabilities.h
+++ b/src/libsync/capabilities.h
@@ -69,6 +69,13 @@ public:
*/
QByteArray preferredUploadChecksumType() const;
+ /**
+ * Helper that returns the preferredUploadChecksumType() if set, or one
+ * of the supportedChecksumTypes() if it isn't. May return an empty
+ * QByteArray if no checksum types are supported.
+ */
+ QByteArray uploadChecksumType() const;
+
private:
QVariantMap _capabilities;
};
diff --git a/src/libsync/propagateupload.cpp b/src/libsync/propagateupload.cpp
index f46bf28..4062def 100644
--- a/src/libsync/propagateupload.cpp
+++ b/src/libsync/propagateupload.cpp
@@ -261,7 +261,7 @@ void PropagateUploadFileQNAM::slotComputeTransmissionChecksum(const QByteArray&
// Compute the transmission checksum.
auto computeChecksum = new ComputeChecksum(this);
if (uploadChecksumEnabled()) {
- computeChecksum->setChecksumType(_propagator->account()->capabilities().preferredUploadChecksumType());
+ computeChecksum->setChecksumType(_propagator->account()->capabilities().uploadChecksumType());
} else {
computeChecksum->setChecksumType(QByteArray());
}
--
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