mirror of
https://github.com/twisterarmy/twister-core.git
synced 2025-01-09 06:18:02 +00:00
rotate torrents in automanaged mode.
This commit is contained in:
parent
8b69da2bf4
commit
66ad21477d
@ -3243,6 +3243,28 @@ retry:
|
|||||||
if (!m_paused) m_auto_manage_time_scaler--;
|
if (!m_paused) m_auto_manage_time_scaler--;
|
||||||
if (m_auto_manage_time_scaler < 0)
|
if (m_auto_manage_time_scaler < 0)
|
||||||
{
|
{
|
||||||
|
// [MF] first torrent is sent to the end of the queue
|
||||||
|
torrent* first = NULL;
|
||||||
|
for (torrent_map::iterator i = m_torrents.begin()
|
||||||
|
, end(m_torrents.end()); i != end; ++i) {
|
||||||
|
torrent* t = i->second.get();
|
||||||
|
TORRENT_ASSERT(t);
|
||||||
|
|
||||||
|
// checking torrents are not subject to auto-management
|
||||||
|
if (t->state() == torrent_status::checking_files
|
||||||
|
|| t->state() == torrent_status::queued_for_checking)
|
||||||
|
{
|
||||||
|
if (t->is_auto_managed() && t->is_paused()) t->resume();
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if (t->is_auto_managed() && !t->has_error()) {
|
||||||
|
if( !first || t->sequence_number() < first->sequence_number() )
|
||||||
|
first = t;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if( first )
|
||||||
|
first->set_queue_position((std::numeric_limits<int>::max)());
|
||||||
|
|
||||||
m_auto_manage_time_scaler = settings().auto_manage_interval;
|
m_auto_manage_time_scaler = settings().auto_manage_interval;
|
||||||
recalculate_auto_managed_torrents();
|
recalculate_auto_managed_torrents();
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user