[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