mirror of
https://github.com/d47081/qBittorrent.git
synced 2025-01-10 14:57:52 +00:00
parent
b64a51337e
commit
6e94b03c13
@ -37,6 +37,7 @@
|
|||||||
#include <libtorrent/create_torrent.hpp>
|
#include <libtorrent/create_torrent.hpp>
|
||||||
#include <libtorrent/storage.hpp>
|
#include <libtorrent/storage.hpp>
|
||||||
#include <libtorrent/torrent_info.hpp>
|
#include <libtorrent/torrent_info.hpp>
|
||||||
|
#include <libtorrent/version.hpp>
|
||||||
|
|
||||||
#include <QDirIterator>
|
#include <QDirIterator>
|
||||||
#include <QFile>
|
#include <QFile>
|
||||||
@ -133,8 +134,13 @@ void TorrentCreatorThread::run()
|
|||||||
|
|
||||||
if (isInterruptionRequested()) return;
|
if (isInterruptionRequested()) return;
|
||||||
|
|
||||||
|
#if LIBTORRENT_VERSION_NUM < 10100
|
||||||
|
libt::create_torrent newTorrent(fs, m_params.pieceSize, -1
|
||||||
|
, (m_params.isAlignmentOptimized ? libt::create_torrent::optimize : 0));
|
||||||
|
#else
|
||||||
libt::create_torrent newTorrent(fs, m_params.pieceSize, -1
|
libt::create_torrent newTorrent(fs, m_params.pieceSize, -1
|
||||||
, (m_params.isAlignmentOptimized ? libt::create_torrent::optimize_alignment : 0));
|
, (m_params.isAlignmentOptimized ? libt::create_torrent::optimize_alignment : 0));
|
||||||
|
#endif
|
||||||
|
|
||||||
// Add url seeds
|
// Add url seeds
|
||||||
foreach (QString seed, m_params.urlSeeds) {
|
foreach (QString seed, m_params.urlSeeds) {
|
||||||
@ -204,6 +210,12 @@ int TorrentCreatorThread::calculateTotalPieces(const QString &inputPath, const i
|
|||||||
|
|
||||||
libt::file_storage fs;
|
libt::file_storage fs;
|
||||||
libt::add_files(fs, Utils::Fs::toNativePath(inputPath).toStdString(), fileFilter);
|
libt::add_files(fs, Utils::Fs::toNativePath(inputPath).toStdString(), fileFilter);
|
||||||
|
|
||||||
|
#if LIBTORRENT_VERSION_NUM < 10100
|
||||||
|
return libt::create_torrent(fs, pieceSize, -1
|
||||||
|
, (isAlignmentOptimized ? libt::create_torrent::optimize : 0)).num_pieces();
|
||||||
|
#else
|
||||||
return libt::create_torrent(fs, pieceSize, -1
|
return libt::create_torrent(fs, pieceSize, -1
|
||||||
, (isAlignmentOptimized ? libt::create_torrent::optimize_alignment : 0)).num_pieces();
|
, (isAlignmentOptimized ? libt::create_torrent::optimize_alignment : 0)).num_pieces();
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
@ -106,10 +106,17 @@ TorrentInfo TorrentInfo::loadFromFile(const QString &path, QString *error) noexc
|
|||||||
// used in `torrent_info()` constructor
|
// used in `torrent_info()` constructor
|
||||||
const int depthLimit = 100;
|
const int depthLimit = 100;
|
||||||
const int tokenLimit = 10000000;
|
const int tokenLimit = 10000000;
|
||||||
libt::bdecode_node node;
|
|
||||||
libt::error_code ec;
|
libt::error_code ec;
|
||||||
|
|
||||||
|
#if LIBTORRENT_VERSION_NUM < 10100
|
||||||
|
libt::lazy_entry node;
|
||||||
|
libt::lazy_bdecode(data.constData(), (data.constData() + data.size()), node, ec
|
||||||
|
, nullptr, depthLimit, tokenLimit);
|
||||||
|
#else
|
||||||
|
libt::bdecode_node node;
|
||||||
bdecode(data.constData(), (data.constData() + data.size()), node, ec
|
bdecode(data.constData(), (data.constData() + data.size()), node, ec
|
||||||
, nullptr, depthLimit, tokenLimit);
|
, nullptr, depthLimit, tokenLimit);
|
||||||
|
#endif
|
||||||
if (ec) {
|
if (ec) {
|
||||||
if (error)
|
if (error)
|
||||||
*error = QString::fromStdString(ec.message());
|
*error = QString::fromStdString(ec.message());
|
||||||
|
Loading…
Reference in New Issue
Block a user