[arch-commits] Commit in qbittorrent/trunk (qbittorrent-libtorrent-1.1.1.patch)

Timothy Redaelli tredaelli at archlinux.org
Mon Dec 19 11:02:43 UTC 2016


    Date: Monday, December 19, 2016 @ 11:02:42
  Author: tredaelli
Revision: 200292

upgpkg: qbittorrent 3.3.9-1

Added:
  qbittorrent/trunk/qbittorrent-libtorrent-1.1.1.patch

------------------------------------+
 qbittorrent-libtorrent-1.1.1.patch |   61 +++++++++++++++++++++++++++++++++++
 1 file changed, 61 insertions(+)

Added: qbittorrent-libtorrent-1.1.1.patch
===================================================================
--- qbittorrent-libtorrent-1.1.1.patch	                        (rev 0)
+++ qbittorrent-libtorrent-1.1.1.patch	2016-12-19 11:02:42 UTC (rev 200292)
@@ -0,0 +1,61 @@
+--- a/src/base/bittorrent/session.cpp
++++ b/src/base/bittorrent/session.cpp
+@@ -45,6 +45,9 @@
+ #include <QTimer>
+ 
+ #include <cstdlib>
++#if LIBTORRENT_VERSION_NUM >= 10100 && LIBTORRENT_VERSION_NUM < 10102
++#include <sstream>
++#endif
+ #include <queue>
+ #include <vector>
+ 
+@@ -194,6 +197,36 @@ namespace
+ 
+     template <typename T>
+     LowerLimited<T> lowerLimited(T limit, T ret) { return LowerLimited<T>(limit, ret); }
++
++#if LIBTORRENT_VERSION_NUM >= 10100 && LIBTORRENT_VERSION_NUM < 10102
++    std::string makeFingerprint(const char* peerId, int major, int minor, int revision, int tag)
++    {
++        Q_ASSERT(peerId);
++        Q_ASSERT(major >= 0);
++        Q_ASSERT(minor >= 0);
++        Q_ASSERT(revision >= 0);
++        Q_ASSERT(tag >= 0);
++        Q_ASSERT(std::strlen(peerId) == 2);
++
++        auto versionToChar = [](int v) -> char
++        {
++            if (v >= 0 && v < 10) return static_cast<char>('0' + v);
++            if (v >= 10) return static_cast<char>('A' + (v - 10));
++            Q_ASSERT(false);
++            return '0';
++        };
++
++        std::ostringstream buf;
++        buf << '-'
++            << peerId
++            << versionToChar(major)
++            << versionToChar(minor)
++            << versionToChar(revision)
++            << versionToChar(tag)
++            << '-';
++        return buf.str();
++    }
++#endif
+ }
+ 
+ // Session
+@@ -334,7 +367,11 @@ Session::Session(QObject *parent)
+         dispatchAlerts(alertPtr.release());
+     });
+ #else
++#if LIBTORRENT_VERSION_NUM < 10102
++    std::string peerId = makeFingerprint(PEER_ID, VERSION_MAJOR, VERSION_MINOR, VERSION_BUGFIX, VERSION_BUILD);
++#else
+     std::string peerId = libt::generate_fingerprint(PEER_ID, VERSION_MAJOR, VERSION_MINOR, VERSION_BUGFIX, VERSION_BUILD);
++#endif
+     libt::settings_pack pack;
+     pack.set_int(libt::settings_pack::alert_mask, alertMask);
+     pack.set_str(libt::settings_pack::peer_fingerprint, peerId);



More information about the arch-commits mailing list