summaryrefslogtreecommitdiff
path: root/src/DownloadCommand.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2009-02-28 11:48:26 +0000
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2009-02-28 11:48:26 +0000
commit0b29a6e2cf4461b20bfdb85d5f5cd635b5ba6b5a (patch)
treef63f712ec29cb963b3270e7bcd7cc24870bb7f77 /src/DownloadCommand.cc
parent362cd20bf117b366dd3c72ce5383e243fa4cd0f1 (diff)
2009-02-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added --max-overall-download-limit option. Now --max-upload-limit option is not ignored when --max-overall-upload-limit option has non-zero value. aria2 checks download(upload) speed in the order: first checks overall speed limit and if it is not exceeded, then checks speed limit per download. Thus you can specify both value. For example, set --max-overall-download-limit=1M and --max-download-limit=500K to prevent from one download from eating all overall speed limit. * src/DefaultBtInteractive.cc * src/DefaultBtInteractive.h * src/DefaultBtMessageDispatcher.cc * src/DefaultBtMessageDispatcher.h * src/DownloadCommand.cc * src/DownloadCommand.h * src/FtpNegotiationCommand.cc * src/HttpResponseCommand.cc * src/OptionHandlerFactory.cc * src/PeerInteractionCommand.cc * src/RequestGroup.cc * src/RequestGroup.h * src/RequestGroupMan.cc * src/RequestGroupMan.h * src/prefs.cc * src/prefs.h * src/usage_text.h * test/DefaultBtMessageDispatcherTest.cc
Diffstat (limited to 'src/DownloadCommand.cc')
-rw-r--r--src/DownloadCommand.cc6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/DownloadCommand.cc b/src/DownloadCommand.cc
index 19a473ad..b6de9b87 100644
--- a/src/DownloadCommand.cc
+++ b/src/DownloadCommand.cc
@@ -57,6 +57,7 @@
#include "prefs.h"
#include "StringFormat.h"
#include "Decoder.h"
+#include "RequestGroupMan.h"
#ifdef ENABLE_MESSAGE_DIGEST
# include "MessageDigestHelper.h"
#endif // ENABLE_MESSAGE_DIGEST
@@ -101,9 +102,8 @@ DownloadCommand::~DownloadCommand() {
}
bool DownloadCommand::executeInternal() {
- if(maxDownloadSpeedLimit > 0 &&
- maxDownloadSpeedLimit <
- _requestGroup->calculateStat().getDownloadSpeed()) {
+ if(e->_requestGroupMan->doesOverallDownloadSpeedExceed() ||
+ _requestGroup->doesDownloadSpeedExceed()) {
e->commands.push_back(this);
disableReadCheckSocket();
return false;