|
|
@ -156,8 +156,6 @@ const int TorrentHandle::MAX_SEEDING_TIME = 525600; |
|
|
|
// The following can be removed after one or two libtorrent releases on each branch.
|
|
|
|
// The following can be removed after one or two libtorrent releases on each branch.
|
|
|
|
namespace |
|
|
|
namespace |
|
|
|
{ |
|
|
|
{ |
|
|
|
const char i18nContext[] = "TorrentHandle"; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// new constructor is available
|
|
|
|
// new constructor is available
|
|
|
|
template<typename T, typename std::enable_if<std::is_constructible<T, libt::torrent_info, bool>::value, int>::type = 0> |
|
|
|
template<typename T, typename std::enable_if<std::is_constructible<T, libt::torrent_info, bool>::value, int>::type = 0> |
|
|
|
T makeTorrentCreator(const libtorrent::torrent_info & ti) |
|
|
|
T makeTorrentCreator(const libtorrent::torrent_info & ti) |
|
|
@ -1476,7 +1474,7 @@ void TorrentHandle::handleStorageMovedFailedAlert(libtorrent::storage_moved_fail |
|
|
|
return; |
|
|
|
return; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
LogMsg(QCoreApplication::translate(i18nContext, "Could not move torrent: '%1'. Reason: %2") |
|
|
|
LogMsg(tr("Could not move torrent: '%1'. Reason: %2") |
|
|
|
.arg(name(), QString::fromStdString(p->message())), Log::CRITICAL); |
|
|
|
.arg(name(), QString::fromStdString(p->message())), Log::CRITICAL); |
|
|
|
|
|
|
|
|
|
|
|
m_moveStorageInfo.newPath.clear(); |
|
|
|
m_moveStorageInfo.newPath.clear(); |
|
|
@ -1649,18 +1647,17 @@ void TorrentHandle::handleSaveResumeDataFailedAlert(libtorrent::save_resume_data |
|
|
|
void TorrentHandle::handleFastResumeRejectedAlert(libtorrent::fastresume_rejected_alert *p) |
|
|
|
void TorrentHandle::handleFastResumeRejectedAlert(libtorrent::fastresume_rejected_alert *p) |
|
|
|
{ |
|
|
|
{ |
|
|
|
qDebug("/!\\ Fast resume failed for %s, reason: %s", qUtf8Printable(name()), p->message().c_str()); |
|
|
|
qDebug("/!\\ Fast resume failed for %s, reason: %s", qUtf8Printable(name()), p->message().c_str()); |
|
|
|
Logger *const logger = Logger::instance(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
updateStatus(); |
|
|
|
updateStatus(); |
|
|
|
if (p->error.value() == libt::errors::mismatching_file_size) { |
|
|
|
if (p->error.value() == libt::errors::mismatching_file_size) { |
|
|
|
// Mismatching file size (files were probably moved)
|
|
|
|
// Mismatching file size (files were probably moved)
|
|
|
|
logger->addMessage(QCoreApplication::translate(i18nContext, "File sizes mismatch for torrent '%1', pausing it.").arg(name()), Log::CRITICAL); |
|
|
|
LogMsg(tr("File sizes mismatch for torrent '%1', pausing it.").arg(name()), Log::CRITICAL); |
|
|
|
m_hasMissingFiles = true; |
|
|
|
m_hasMissingFiles = true; |
|
|
|
if (!isPaused()) |
|
|
|
if (!isPaused()) |
|
|
|
pause(); |
|
|
|
pause(); |
|
|
|
} |
|
|
|
} |
|
|
|
else { |
|
|
|
else { |
|
|
|
logger->addMessage(QCoreApplication::translate(i18nContext, "Fast resume data was rejected for torrent '%1'. Reason: %2. Checking again...") |
|
|
|
LogMsg(tr("Fast resume data was rejected for torrent '%1'. Reason: %2. Checking again...") |
|
|
|
.arg(name(), QString::fromStdString(p->message())), Log::CRITICAL); |
|
|
|
.arg(name(), QString::fromStdString(p->message())), Log::CRITICAL); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|