diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2013-07-28 18:07:29 +0900 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2013-07-28 18:07:29 +0900 |
| commit | de55569de527a5172f14a5ee9f6ecbcf41382e25 (patch) | |
| tree | f4b51b81fb25bdf5f792c8085043bb2c520f443f /src/RequestGroupMan.cc | |
| parent | 41121e09f7cf6ed4a95797a80da63bca1d4884cd (diff) | |
Always save control file if --force-save is given
Diffstat (limited to 'src/RequestGroupMan.cc')
| -rw-r--r-- | src/RequestGroupMan.cc | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/RequestGroupMan.cc b/src/RequestGroupMan.cc index 6cae6b34..e3a461eb 100644 --- a/src/RequestGroupMan.cc +++ b/src/RequestGroupMan.cc @@ -334,7 +334,8 @@ public: !group->getDownloadContext()->isChecksumVerificationNeeded()) { group->applyLastModifiedTimeToLocalFiles(); group->reportDownloadFinished(); - if(group->allDownloadFinished()) { + if(group->allDownloadFinished() && + !group->getOption()->getAsBool(PREF_FORCE_SAVE)) { group->removeControlFile(); saveSignature(group); } else { @@ -517,11 +518,10 @@ void RequestGroupMan::fillRequestGroupFromReserver(DownloadEngine* e) void RequestGroupMan::save() { - for(RequestGroupList::iterator itr = requestGroups_.begin(), - eoi = requestGroups_.end(); itr != eoi; ++itr) { - const std::shared_ptr<RequestGroup>& rg = *itr; + for(auto& rg : requestGroups_) { if(rg->allDownloadFinished() && - !rg->getDownloadContext()->isChecksumVerificationNeeded()) { + !rg->getDownloadContext()->isChecksumVerificationNeeded() && + !rg->getOption()->getAsBool(PREF_FORCE_SAVE)) { rg->removeControlFile(); } else { try { |
