1
0
mirror of https://github.com/d47081/qBittorrent.git synced 2025-03-13 05:41:17 +00:00

fix libtorrent 1.0 compatibility

This commit is contained in:
arvidn 2013-12-31 14:10:41 -08:00
parent e380a17c82
commit 3b4f9d2eeb
3 changed files with 37 additions and 17 deletions

View File

@ -70,7 +70,7 @@ namespace misc
inline QString toQString(const libtorrent::sha1_hash &hash) {
char out[41];
to_hex((char const*)&hash[0], libtorrent::sha1_hash::size, out);
libtorrent::to_hex((char const*)&hash[0], libtorrent::sha1_hash::size, out);
return QString(out);
}

View File

@ -67,13 +67,16 @@
#include <libtorrent/identify_client.hpp>
#include <libtorrent/alert_types.hpp>
#include <libtorrent/torrent_info.hpp>
#include <libtorrent/upnp.hpp>
#include <libtorrent/natpmp.hpp>
#include <libtorrent/error_code.hpp>
#include <queue>
#include <string.h>
#include "dnsupdater.h"
#if LIBTORRENT_VERSION_MAJOR < 1
#include <libtorrent/upnp.hpp>
#include <libtorrent/natpmp.hpp>
#endif
//initialize static member variables
QHash<QString, TorrentTempData::TorrentData> TorrentTempData::data = QHash<QString, TorrentTempData::TorrentData>();
QHash<QString, bool> HiddenData::data = QHash<QString, bool>();
@ -106,8 +109,11 @@ QBtSession::QBtSession()
#ifndef DISABLE_GUI
, geoipDBLoaded(false), resolve_countries(false)
#endif
, m_tracker(0), m_shutdownAct(NO_SHUTDOWN),
m_upnp(0), m_natpmp(0), m_dynDNSUpdater(0)
, m_tracker(0), m_shutdownAct(NO_SHUTDOWN)
#if LIBTORRENT_VERSION_MAJOR < 1
, m_upnp(0), m_natpmp(0)
#endif
, m_dynDNSUpdater(0)
{
BigRatioTimer = new QTimer(this);
BigRatioTimer->setInterval(10000);
@ -1106,7 +1112,11 @@ QTorrentHandle QBtSession::addTorrent(QString path, bool fromScanDir, QString fr
if (resumed) {
if (loadFastResumeData(hash, buf)) {
fastResume = true;
#if LIBTORRENT_VERSION_MAJOR < 1
p.resume_data = &buf;
#else
p.resume_data = buf;
#endif
qDebug("Successfully loaded fast resume data");
}
}
@ -1431,25 +1441,33 @@ void QBtSession::setMaxUploadsPerTorrent(int max) {
void QBtSession::enableUPnP(bool b) {
Preferences pref;
if (b) {
if (!m_upnp) {
qDebug("Enabling UPnP / NAT-PMP");
m_upnp = s->start_upnp();
m_natpmp = s->start_natpmp();
}
qDebug("Enabling UPnP / NAT-PMP");
#if LIBTORRENT_VERSION_MAJOR < 1
m_upnp = s->start_upnp();
m_natpmp = s->start_natpmp();
#else
s->start_upnp();
s->start_natpmp();
#endif
// Use UPnP/NAT-PMP for Web UI too
if (pref.isWebUiEnabled() && pref.useUPnPForWebUIPort()) {
const qint16 port = pref.getWebUiPort();
#if LIBTORRENT_VERSION_MAJOR < 1
m_upnp->add_mapping(upnp::tcp, port, port);
m_natpmp->add_mapping(natpmp::tcp, port, port);
#else
s->add_port_mapping(session::tcp, port, port);
#endif
}
} else {
if (m_upnp) {
qDebug("Disabling UPnP / NAT-PMP");
s->stop_upnp();
s->stop_natpmp();
m_upnp = 0;
m_natpmp = 0;
}
qDebug("Disabling UPnP / NAT-PMP");
s->stop_upnp();
s->stop_natpmp();
#if LIBTORRENT_VERSION_MAJOR < 1
m_upnp = 0;
m_natpmp = 0;
#endif
}
}

View File

@ -279,8 +279,10 @@ private:
TorrentSpeedMonitor *m_speedMonitor;
shutDownAction m_shutdownAct;
// Port forwarding
#if LIBTORRENT_VERSION_MAJOR < 1
libtorrent::upnp *m_upnp;
libtorrent::natpmp *m_natpmp;
#endif
// DynDNS
DNSUpdater *m_dynDNSUpdater;
};