summaryrefslogtreecommitdiff
path: root/src/DefaultBtInteractive.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2016-07-10 22:42:49 +0900
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2016-07-10 22:42:49 +0900
commitbabdcb2c7d249b19ad38a07158e829f52a08e75a (patch)
tree7207be5d5f5762754fd601fbafe5c43ea479a0ec /src/DefaultBtInteractive.cc
parentf2aa7564b09f6c80d9975533401396f11a0e8439 (diff)
Change have entry indexing method
Now use increasing sequence of integer rather than timer value.
Diffstat (limited to 'src/DefaultBtInteractive.cc')
-rw-r--r--src/DefaultBtInteractive.cc8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/DefaultBtInteractive.cc b/src/DefaultBtInteractive.cc
index 10f3b956..6c125e12 100644
--- a/src/DefaultBtInteractive.cc
+++ b/src/DefaultBtInteractive.cc
@@ -92,8 +92,8 @@ DefaultBtInteractive::DefaultBtInteractive(
peer_(peer),
metadataGetMode_(false),
localNode_(nullptr),
+ lastHaveIndex_(0),
allowedFastSetSize_(10),
- haveTimer_(global::wallclock()),
keepAliveTimer_(global::wallclock()),
floodingTimer_(global::wallclock()),
inactiveTimer_(global::wallclock()),
@@ -172,7 +172,6 @@ DefaultBtInteractive::receiveAndSendHandshake()
void DefaultBtInteractive::doPostHandshakeProcessing()
{
// Set time 0 to haveTimer to cache http/ftp download piece completion
- haveTimer_ = Timer::zero();
keepAliveTimer_ = global::wallclock();
floodingTimer_ = global::wallclock();
pexTimer_ = Timer::zero();
@@ -267,8 +266,9 @@ void DefaultBtInteractive::checkHave()
{
std::vector<size_t> haveIndexes;
- pieceStorage_->getAdvertisedPieceIndexes(haveIndexes, cuid_, haveTimer_);
- haveTimer_ = global::wallclock();
+ lastHaveIndex_ = pieceStorage_->getAdvertisedPieceIndexes(haveIndexes, cuid_,
+ lastHaveIndex_);
+
// Use bitfield message if it is equal to or less than the total
// size of have messages.
if (5 + pieceStorage_->getBitfieldLength() <= haveIndexes.size() * 9) {