Ver Fonte

2009-11-23 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>

	Set thresholdSpeed to 0 in metadataGetMode because speed doesn't
	get high enough in that mode.
	* src/ActivePeerConnectionCommand.cc
Tatsuhiro Tsujikawa há 16 anos atrás
pai
commit
9d2199acbb
2 ficheiros alterados com 15 adições e 2 exclusões
  1. 6 0
      ChangeLog
  2. 9 2
      src/ActivePeerConnectionCommand.cc

+ 6 - 0
ChangeLog

@@ -1,3 +1,9 @@
+2009-11-23  Tatsuhiro Tsujikawa  <t-tujikawa@users.sourceforge.net>
+
+	Set thresholdSpeed to 0 in metadataGetMode because speed doesn't
+	get high enough in that mode.
+	* src/ActivePeerConnectionCommand.cc
+
 2009-11-22  Tatsuhiro Tsujikawa  <t-tujikawa@users.sourceforge.net>
 
 	Added BitTorrent magnet link support to ProtocolDetector.

+ 9 - 2
src/ActivePeerConnectionCommand.cc

@@ -48,6 +48,7 @@
 #include "BtAnnounce.h"
 #include "RequestGroup.h"
 #include "DownloadContext.h"
+#include "bittorrent_helper.h"
 
 namespace aria2 {
 
@@ -81,8 +82,14 @@ bool ActivePeerConnectionCommand::execute() {
     const unsigned int maxDownloadLimit =
       _requestGroup->getMaxDownloadSpeedLimit();
     const unsigned int maxUploadLimit = _requestGroup->getMaxUploadSpeedLimit();
-    unsigned int thresholdSpeed =
-      _requestGroup->getOption()->getAsInt(PREF_BT_REQUEST_PEER_SPEED_LIMIT);
+    unsigned int thresholdSpeed;
+    if(_requestGroup->getDownloadContext()->
+       getAttribute(bittorrent::BITTORRENT).containsKey(bittorrent::METADATA)) {
+      thresholdSpeed =
+	_requestGroup->getOption()->getAsInt(PREF_BT_REQUEST_PEER_SPEED_LIMIT);
+    } else {
+      thresholdSpeed = 0;
+    }
     if(maxDownloadLimit > 0) {
       thresholdSpeed = std::min(maxDownloadLimit, thresholdSpeed);
     }