invariant check fix

This commit is contained in:
Arvid Norberg 2008-07-08 21:33:36 +00:00
parent 55a944c014
commit 63d4e0d4a3
2 changed files with 4 additions and 8 deletions

View File

@ -902,12 +902,9 @@ namespace libtorrent
m_suggested_pieces.erase(i); m_suggested_pieces.erase(i);
} }
if (m_request_queue.empty()) if (m_request_queue.empty() && m_download_queue.size() < 2)
{ {
if (m_download_queue.size() < 2) request_a_block(*t, *this);
{
request_a_block(*t, *this);
}
send_block_requests(); send_block_requests();
} }
} }

View File

@ -307,8 +307,6 @@ namespace libtorrent
// that was free. If we couldn't find any busy // that was free. If we couldn't find any busy
// blocks as well, we cannot download anything // blocks as well, we cannot download anything
// more from this peer. // more from this peer.
c.send_block_requests();
return; return;
} }
@ -329,7 +327,6 @@ namespace libtorrent
TORRENT_ASSERT(p.is_requested(*i)); TORRENT_ASSERT(p.is_requested(*i));
TORRENT_ASSERT(p.num_peers(*i) > 0); TORRENT_ASSERT(p.num_peers(*i) > 0);
c.add_request(*i); c.add_request(*i);
c.send_block_requests();
} }
policy::policy(torrent* t) policy::policy(torrent* t)
@ -864,6 +861,7 @@ namespace libtorrent
if (c.is_interesting()) if (c.is_interesting())
{ {
request_a_block(*m_torrent, c); request_a_block(*m_torrent, c);
c.send_block_requests();
} }
} }
@ -1067,6 +1065,7 @@ namespace libtorrent
&& c.allowed_fast().empty()) && c.allowed_fast().empty())
return; return;
request_a_block(*m_torrent, c); request_a_block(*m_torrent, c);
c.send_block_requests();
} }
#ifndef NDEBUG #ifndef NDEBUG