summaryrefslogtreecommitdiff
path: root/src/Piece.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/Piece.cc')
-rw-r--r--src/Piece.cc10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/Piece.cc b/src/Piece.cc
index 26f50fe2..2d5a689b 100644
--- a/src/Piece.cc
+++ b/src/Piece.cc
@@ -173,10 +173,14 @@ bool Piece::getMissingUnusedBlockIndex(size_t& index) const
}
}
-bool Piece::getMissingBlockIndex(size_t& index) const
+bool Piece::getMissingUnusedBlockIndex
+(std::vector<size_t>& indexes, size_t n) const
{
- if(bitfield->getMissingIndex(index)) {
- bitfield->setUseBit(index);
+ if(bitfield->getFirstNMissingUnusedIndex(indexes, n)) {
+ for(std::vector<size_t>::const_iterator i = indexes.begin();
+ i != indexes.end(); ++i) {
+ bitfield->setUseBit(*i);
+ }
return true;
} else {
return false;