fixed failing invariant check in peer_connection's download queue

This commit is contained in:
Arvid Norberg
2010-10-03 22:06:53 +00:00
parent 8e4addf2c5
commit f11b1ce6a0
4 changed files with 22 additions and 11 deletions

View File

@@ -2305,7 +2305,7 @@ namespace libtorrent
// this is called when a request is rejected or when
// a peer disconnects. The piece might be in any state
void piece_picker::abort_download(piece_block block)
void piece_picker::abort_download(piece_block block, void* peer)
{
#ifdef TORRENT_EXPENSIVE_INVARIANT_CHECKS
TORRENT_PIECE_PICKER_INVARIANT_CHECK;
@@ -2340,6 +2340,7 @@ namespace libtorrent
{
TORRENT_ASSERT(info.num_peers > 0);
if (info.num_peers > 0) --info.num_peers;
if (info.peer == peer) info.peer = 0;
TORRENT_ASSERT(block.block_index < blocks_in_piece(block.piece_index));