Browse Source

Revise Session::getPendingAlerts function signature

adaptive-webui-19844
Chocobo1 5 years ago
parent
commit
a3fd340187
No known key found for this signature in database
GPG Key ID: 210D9C873253A68C
  1. 22
      src/base/bittorrent/session.cpp
  2. 2
      src/base/bittorrent/session.h

22
src/base/bittorrent/session.cpp

@ -2195,14 +2195,13 @@ void Session::saveResumeData() @@ -2195,14 +2195,13 @@ void Session::saveResumeData()
generateResumeData(true);
while (m_numResumeData > 0) {
std::vector<lt::alert *> alerts;
getPendingAlerts(alerts, 30 * 1000);
const std::vector<lt::alert *> alerts = getPendingAlerts(lt::seconds(30));
if (alerts.empty()) {
fprintf(stderr, " aborting with %d outstanding torrents to save resume data for\n", m_numResumeData);
break;
}
for (const auto a : alerts) {
for (const lt::alert *a : alerts) {
switch (a->type()) {
case lt::save_resume_data_failed_alert::alert_type:
case lt::save_resume_data_alert::alert_type:
@ -3812,13 +3811,14 @@ void Session::handleIPFilterError() @@ -3812,13 +3811,14 @@ void Session::handleIPFilterError()
emit IPFilterParsed(true, 0);
}
void Session::getPendingAlerts(std::vector<lt::alert *> &out, const ulong time)
std::vector<lt::alert *> Session::getPendingAlerts(const lt::time_duration time) const
{
Q_ASSERT(out.empty());
if (time > lt::time_duration::zero())
m_nativeSession->wait_for_alert(time);
if (time > 0)
m_nativeSession->wait_for_alert(lt::milliseconds(time));
m_nativeSession->pop_alerts(&out);
std::vector<lt::alert *> alerts;
m_nativeSession->pop_alerts(&alerts);
return alerts;
}
bool Session::isCreateTorrentSubfolder() const
@ -3834,10 +3834,8 @@ void Session::setCreateTorrentSubfolder(const bool value) @@ -3834,10 +3834,8 @@ void Session::setCreateTorrentSubfolder(const bool value)
// Read alerts sent by the BitTorrent session
void Session::readAlerts()
{
std::vector<lt::alert *> alerts;
getPendingAlerts(alerts);
for (const auto a : alerts)
const std::vector<lt::alert *> alerts = getPendingAlerts();
for (const lt::alert *a : alerts)
handleAlert(a);
}

2
src/base/bittorrent/session.h

@ -568,7 +568,7 @@ namespace BitTorrent @@ -568,7 +568,7 @@ namespace BitTorrent
void saveTorrentsQueue();
void removeTorrentsQueue();
void getPendingAlerts(std::vector<lt::alert *> &out, ulong time = 0);
std::vector<lt::alert *> getPendingAlerts(lt::time_duration time = lt::time_duration::zero()) const;
// BitTorrent
lt::session *m_nativeSession = nullptr;

Loading…
Cancel
Save