diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2012-09-07 21:45:36 +0900 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2012-09-07 21:45:36 +0900 |
| commit | d0703a2f26822e8edac0e95a8a3093bea4ee3213 (patch) | |
| tree | 84e1bd24471f8cbd39b33704c0781f02d76e54a0 /src/TrackerWatcherCommand.cc | |
| parent | 763c7a0aa0419c6ee7dbbc2bace5bdb09e3ba563 (diff) | |
Code cleanup
Diffstat (limited to 'src/TrackerWatcherCommand.cc')
| -rw-r--r-- | src/TrackerWatcherCommand.cc | 37 |
1 files changed, 19 insertions, 18 deletions
diff --git a/src/TrackerWatcherCommand.cc b/src/TrackerWatcherCommand.cc index ac324871..e796f8c6 100644 --- a/src/TrackerWatcherCommand.cc +++ b/src/TrackerWatcherCommand.cc @@ -112,33 +112,34 @@ bool TrackerWatcherCommand::execute() { A2_LOG_ERROR_EX(EX_EXCEPTION_CAUGHT, ex); } } - } else if(trackerRequestGroup_->getNumCommand() == 0 && - trackerRequestGroup_->downloadFinished()){ + } else if(trackerRequestGroup_->getNumCommand() == 0) { // We really want to make sure that tracker request has finished // by checking getNumCommand() == 0. Because we reset // trackerRequestGroup_, if it is still used in other Command, we // will get Segmentation fault. - try { - std::string trackerResponse = getTrackerResponse(trackerRequestGroup_); + if(trackerRequestGroup_->downloadFinished()) { + try { + std::string trackerResponse = getTrackerResponse(trackerRequestGroup_); - processTrackerResponse(trackerResponse); - btAnnounce_->announceSuccess(); - btAnnounce_->resetAnnounce(); - } catch(RecoverableException& ex) { - A2_LOG_ERROR_EX(EX_EXCEPTION_CAUGHT, ex); - btAnnounce_->announceFailure(); + processTrackerResponse(trackerResponse); + btAnnounce_->announceSuccess(); + btAnnounce_->resetAnnounce(); + } catch(RecoverableException& ex) { + A2_LOG_ERROR_EX(EX_EXCEPTION_CAUGHT, ex); + btAnnounce_->announceFailure(); + if(btAnnounce_->isAllAnnounceFailed()) { + btAnnounce_->resetAnnounce(); + } + } + trackerRequestGroup_.reset(); + } else { + // handle errors here + btAnnounce_->announceFailure(); // inside it, trackers = 0. + trackerRequestGroup_.reset(); if(btAnnounce_->isAllAnnounceFailed()) { btAnnounce_->resetAnnounce(); } } - trackerRequestGroup_.reset(); - } else if(trackerRequestGroup_->getNumCommand() == 0){ - // handle errors here - btAnnounce_->announceFailure(); // inside it, trackers = 0. - trackerRequestGroup_.reset(); - if(btAnnounce_->isAllAnnounceFailed()) { - btAnnounce_->resetAnnounce(); - } } e_->addCommand(this); return false; |
