summaryrefslogtreecommitdiff
path: root/src/AbstractCommand.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2008-12-15 15:38:07 +0000
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2008-12-15 15:38:07 +0000
commit5a639a3d1e2af05fcc48f9821be5d6afc1cdef87 (patch)
tree589cacb3587323c01cf6689b0f15cd1ce5775c8b /src/AbstractCommand.cc
parent110749df84956cf4c9d2c3f2070a64179d7cd5f1 (diff)
2008-12-16 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug that causes corrupted downloads if HTTP pipelining is enabled and the server doesn't support keep-alive. * src/AbstractCommand.cc * src/DownloadCommand.cc * src/HttpDownloadCommand.cc * src/HttpDownloadCommand.h * src/HttpResponseCommand.cc * src/Request.cc * src/Request.h * test/RequestTest.cc
Diffstat (limited to 'src/AbstractCommand.cc')
-rw-r--r--src/AbstractCommand.cc8
1 files changed, 1 insertions, 7 deletions
diff --git a/src/AbstractCommand.cc b/src/AbstractCommand.cc
index 1e20f649..5c2f3491 100644
--- a/src/AbstractCommand.cc
+++ b/src/AbstractCommand.cc
@@ -123,13 +123,7 @@ bool AbstractCommand::execute() {
if(!_requestGroup->getPieceStorage().isNull()) {
_segments.clear();
_requestGroup->getSegmentMan()->getInFlightSegment(_segments, cuid);
- size_t maxSegments;
- if(req->isPipeliningEnabled()) {
- maxSegments = e->option->getAsInt(PREF_MAX_HTTP_PIPELINING);
- } else {
- maxSegments = 1;
- }
- while(_segments.size() < maxSegments) {
+ while(_segments.size() < req->getMaxPipelinedRequest()) {
SegmentHandle segment = _requestGroup->getSegmentMan()->getSegment(cuid);
if(segment.isNull()) {
break;