From 53c408212d1410828c5aca1c0219360c62b403f4 Mon Sep 17 00:00:00 2001 From: Arvid Norberg Date: Mon, 15 Sep 2008 16:21:03 +0000 Subject: [PATCH] nicer fix for debug iterators --- src/piece_picker.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/piece_picker.cpp b/src/piece_picker.cpp index f1dafe7ec..0c480cf25 100644 --- a/src/piece_picker.cpp +++ b/src/piece_picker.cpp @@ -105,9 +105,9 @@ namespace libtorrent for (std::vector::const_iterator i = m_piece_map.begin() + m_cursor , end(m_piece_map.end()); i != end && (i->have() || i->filtered()); ++i, ++m_cursor); - for (std::vector::const_iterator i = m_piece_map.begin() - + m_reverse_cursor - 1; m_reverse_cursor > 0 && (i->have() || i->filtered()); - --i, --m_reverse_cursor); + for (std::vector::const_reverse_iterator i = m_piece_map.rend() + - m_reverse_cursor; m_reverse_cursor > 0 && (i->have() || i->filtered()); + ++i, --m_reverse_cursor); // the piece index is stored in 20 bits, which limits the allowed // number of pieces somewhat @@ -338,8 +338,8 @@ namespace libtorrent index = num_pieces; if (num_pieces > 0) { - for (std::vector::const_iterator i = m_piece_map.begin() - + (index - 1); index > 0 && (i->have() || i->filtered()); i != m_piece_map.begin() ? --i : i, --index); + for (std::vector::const_reverse_iterator i = m_piece_map.rend() + - index; index > 0 && (i->have() || i->filtered()); ++i, --index); TORRENT_ASSERT(index == num_pieces || m_piece_map[index].have() || m_piece_map[index].filtered());