diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2008-05-11 09:36:39 +0000 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2008-05-11 09:36:39 +0000 |
| commit | 825cfe7715fee70e08a76f87cf2803602d3c5fed (patch) | |
| tree | 277cec531172e410d6fc56da37a567b1f28108c2 /src/StreamFileAllocationEntry.cc | |
| parent | 6d78a7656d1f726fafeede2536584c40e4379cb5 (diff) | |
2008-05-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Pass std::deque<Command*> by reference to avoid unnecessary coping.
* src/AbstractCommand.cc
* src/BtCheckIntegrityEntry.cc
* src/BtCheckIntegrityEntry.h
* src/BtFileAllocationEntry.cc
* src/BtFileAllocationEntry.h
* src/BtSetup.cc
* src/BtSetup.h
* src/CheckIntegrityCommand.cc
* src/CheckIntegrityEntry.h
* src/ChecksumCheckIntegrityEntry.cc
* src/ChecksumCheckIntegrityEntry.h
* src/DHTSetup.cc
* src/DHTSetup.h
* src/DownloadEngine.cc
* src/FileAllocationCommand.cc
* src/FileAllocationEntry.h
* src/RequestGroup.cc
* src/RequestGroup.h
* src/RequestGroupMan.cc
* src/RequestGroupMan.h
* src/StreamCheckIntegrityEntry.cc
* src/StreamCheckIntegrityEntry.h
* src/StreamFileAllocationEntry.cc
* src/StreamFileAllocationEntry.h
* src/TrackerWatcherCommand.cc
* src/a2functional.h
Diffstat (limited to 'src/StreamFileAllocationEntry.cc')
| -rw-r--r-- | src/StreamFileAllocationEntry.cc | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/src/StreamFileAllocationEntry.cc b/src/StreamFileAllocationEntry.cc index 4e213fb9..9c6b9d31 100644 --- a/src/StreamFileAllocationEntry.cc +++ b/src/StreamFileAllocationEntry.cc @@ -53,29 +53,29 @@ StreamFileAllocationEntry::StreamFileAllocationEntry(const RequestHandle& curren StreamFileAllocationEntry::~StreamFileAllocationEntry() {} -Commands StreamFileAllocationEntry::prepareForNextAction(DownloadEngine* e) +void StreamFileAllocationEntry::prepareForNextAction(std::deque<Command*>& commands, + DownloadEngine* e) { - Commands commands; if(_nextCommand) { // give _nextCommand a chance to execute in the next execution loop. _nextCommand->setStatus(Command::STATUS_ONESHOT_REALTIME); commands.push_back(popNextCommand()); // try remaining uris - Commands streamCommands = _requestGroup->createNextCommandWithAdj(e, -1); - std::copy(streamCommands.begin(), streamCommands.end(), std::back_inserter(commands)); + _requestGroup->createNextCommandWithAdj(commands, e, -1); } else { if(_currentRequest.isNull()) { - commands = _requestGroup->createNextCommandWithAdj(e, 0); + _requestGroup->createNextCommandWithAdj(commands, e, 0); } else { - Commands streamCommands = _requestGroup->createNextCommandWithAdj(e, -1); - Command* command = InitiateConnectionCommandFactory::createInitiateConnectionCommand(CUIDCounterSingletonHolder::instance()->newID(), - _currentRequest, _requestGroup, e); - + Command* command = + InitiateConnectionCommandFactory::createInitiateConnectionCommand + (CUIDCounterSingletonHolder::instance()->newID(), + _currentRequest, _requestGroup, e); + commands.push_back(command); - std::copy(streamCommands.begin(), streamCommands.end(), std::back_inserter(commands)); + + _requestGroup->createNextCommandWithAdj(commands, e, -1); } } - return commands; } } // namespace aria2 |
