diff --git a/src/DefaultBtInteractive.cc b/src/DefaultBtInteractive.cc index f844abb0..10f3b956 100644 --- a/src/DefaultBtInteractive.cc +++ b/src/DefaultBtInteractive.cc @@ -563,17 +563,17 @@ void DefaultBtInteractive::doInteractionProcessing() } else { checkActiveInteraction(); - decideChoking(); - detectMessageFlooding(); if (perSecTimer_.difference(global::wallclock()) >= 1_s) { perSecTimer_ = global::wallclock(); dispatcher_->checkRequestSlotAndDoNecessaryThing(); } + numReceivedMessage_ = receiveMessages(); + detectMessageFlooding(); + decideChoking(); + decideInterest(); checkHave(); sendKeepAlive(); - numReceivedMessage_ = receiveMessages(); btRequestFactory_->removeCompletedPiece(); - decideInterest(); if (!pieceStorage_->downloadFinished()) { addRequests(); }