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/AbstractCommand.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/AbstractCommand.cc')
| -rw-r--r-- | src/AbstractCommand.cc | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/AbstractCommand.cc b/src/AbstractCommand.cc index 88a8193d..16352cd1 100644 --- a/src/AbstractCommand.cc +++ b/src/AbstractCommand.cc @@ -184,7 +184,8 @@ bool AbstractCommand::execute() { void AbstractCommand::tryReserved() { _requestGroup->removeServerHost(cuid); - Commands commands = _requestGroup->createNextCommand(e, 1); + Commands commands; + _requestGroup->createNextCommand(commands, e, 1); e->addCommand(commands); } @@ -323,7 +324,11 @@ bool AbstractCommand::nameResolveFinished() const { void AbstractCommand::prepareForNextAction(Command* nextCommand) { CheckIntegrityEntryHandle entry(new StreamCheckIntegrityEntry(req, _requestGroup, nextCommand)); - e->addCommand(_requestGroup->processCheckIntegrityEntry(entry, e)); + + std::deque<Command*> commands; + _requestGroup->processCheckIntegrityEntry(commands, entry, e); + + e->addCommand(commands); e->setNoWait(true); } |
