diff --git a/libtorrent/src/peer_connection.cpp b/libtorrent/src/peer_connection.cpp index f99839191..e63788d0f 100755 --- a/libtorrent/src/peer_connection.cpp +++ b/libtorrent/src/peer_connection.cpp @@ -1614,12 +1614,6 @@ namespace libtorrent } #endif - // if we already have the piece, we can - // ignore this message - if (t->valid_metadata() - && t->have_piece(index)) - return; - if (index < 0 || index >= int(m_have_piece.size())) { #ifdef TORRENT_VERBOSE_LOGGING @@ -1629,6 +1623,12 @@ namespace libtorrent return; } + // if we already have the piece, we can + // ignore this message + if (t->valid_metadata() + && t->have_piece(index)) + return; + m_allowed_fast.push_back(index); // if the peer has the piece and we want