Преглед на файлове

Fix busy loop when upload rate limit hits

Tatsuhiro Tsujikawa преди 9 години
родител
ревизия
887f7a6b90
променени са 1 файла, в които са добавени 6 реда и са изтрити 2 реда
  1. 6 2
      src/PeerInteractionCommand.cc

+ 6 - 2
src/PeerInteractionCommand.cc

@@ -360,8 +360,12 @@ bool PeerInteractionCommand::executeInternal()
       break;
     }
   }
-  if (btInteractive_->countPendingMessage() > 0 ||
-      btInteractive_->isSendingMessageInProgress()) {
+  if ((btInteractive_->countPendingMessage() > 0 ||
+       btInteractive_->isSendingMessageInProgress()) &&
+      !getDownloadEngine()
+           ->getRequestGroupMan()
+           ->doesOverallUploadSpeedExceed() &&
+      !requestGroup_->doesUploadSpeedExceed()) {
     setWriteCheckSocket(getSocket());
   }
   else {