more valgrind instrumentation

This commit is contained in:
Arvid Norberg 2013-10-16 08:29:12 +00:00
parent 17cb5d1041
commit 49502ed824
1 changed files with 15 additions and 2 deletions

View File

@ -2174,6 +2174,10 @@ namespace libtorrent
bool piece_picker::is_requested(piece_block block) const
{
#ifdef TORRENT_USE_VALGRIND
VALGRIND_CHECK_VALUE_IS_DEFINED(block.block_index);
VALGRIND_CHECK_VALUE_IS_DEFINED(block.piece_index);
#endif
TORRENT_ASSERT(block.block_index != piece_block::invalid.block_index);
TORRENT_ASSERT(block.piece_index != piece_block::invalid.piece_index);
TORRENT_ASSERT(block.piece_index < m_piece_map.size());
@ -2188,6 +2192,10 @@ namespace libtorrent
bool piece_picker::is_downloaded(piece_block block) const
{
#ifdef TORRENT_USE_VALGRIND
VALGRIND_CHECK_VALUE_IS_DEFINED(block.block_index);
VALGRIND_CHECK_VALUE_IS_DEFINED(block.piece_index);
#endif
TORRENT_ASSERT(block.block_index != piece_block::invalid.block_index);
TORRENT_ASSERT(block.piece_index != piece_block::invalid.piece_index);
TORRENT_ASSERT(block.piece_index < m_piece_map.size());
@ -2203,12 +2211,17 @@ namespace libtorrent
bool piece_picker::is_finished(piece_block block) const
{
#ifdef TORRENT_USE_VALGRIND
VALGRIND_CHECK_VALUE_IS_DEFINED(block.block_index);
VALGRIND_CHECK_VALUE_IS_DEFINED(block.piece_index);
#endif
TORRENT_ASSERT(block.block_index != piece_block::invalid.block_index);
TORRENT_ASSERT(block.piece_index != piece_block::invalid.piece_index);
TORRENT_ASSERT(block.piece_index < m_piece_map.size());
if (m_piece_map[block.piece_index].index == piece_pos::we_have_index) return true;
if (m_piece_map[block.piece_index].downloading == 0) return false;
piece_pos const& p = m_piece_map[block.piece_index];
if (p.index == piece_pos::we_have_index) return true;
if (p.downloading == 0) return false;
std::vector<downloading_piece>::const_iterator i = find_dl_piece(block.piece_index);
TORRENT_ASSERT(i != m_downloads.end());
TORRENT_ASSERT(i->info[block.block_index].piece_index == block.piece_index);