fixed assert when adding a torrent with resume data and immediately setting all piece priorities to 0
This commit is contained in:
parent
6c972e03a4
commit
86a3bf3e07
|
@ -5217,7 +5217,18 @@ namespace libtorrent
|
||||||
#ifdef TORRENT_DEBUG
|
#ifdef TORRENT_DEBUG
|
||||||
if (s != torrent_status::checking_files
|
if (s != torrent_status::checking_files
|
||||||
&& s != torrent_status::queued_for_checking)
|
&& s != torrent_status::queued_for_checking)
|
||||||
TORRENT_ASSERT(!m_queued_for_checking);
|
{
|
||||||
|
// the only valid transition away from queued_for_checking
|
||||||
|
// is to checking_files. One exception is to finished
|
||||||
|
// in case all the files are marked with priority 0
|
||||||
|
if (m_queued_for_checking)
|
||||||
|
{
|
||||||
|
std::vector<int> pieces;
|
||||||
|
m_picker->piece_priorities(pieces);
|
||||||
|
// make sure all pieces have priority 0
|
||||||
|
TORRENT_ASSERT(std::count(pieces.begin(), pieces.end(), 0) == pieces.size());
|
||||||
|
}
|
||||||
|
}
|
||||||
if (s == torrent_status::seeding)
|
if (s == torrent_status::seeding)
|
||||||
TORRENT_ASSERT(is_seed());
|
TORRENT_ASSERT(is_seed());
|
||||||
if (s == torrent_status::finished)
|
if (s == torrent_status::finished)
|
||||||
|
|
Loading…
Reference in New Issue