diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2017-03-02 22:54:11 +0900 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2017-03-02 22:54:11 +0900 |
| commit | bfc54d0b9a694e5d87efd8ed11b5393bc4b66f93 (patch) | |
| tree | fde04123b650a5ac981b13506dfeeccf6036d659 /src | |
| parent | 9eff8100ef28ccda14161a35628c51063cf66f66 (diff) | |
Save control file early
Diffstat (limited to 'src')
| -rw-r--r-- | src/BtFileAllocationEntry.cc | 7 | ||||
| -rw-r--r-- | src/StreamFileAllocationEntry.cc | 10 |
2 files changed, 17 insertions, 0 deletions
diff --git a/src/BtFileAllocationEntry.cc b/src/BtFileAllocationEntry.cc index d173b7ce..c026e296 100644 --- a/src/BtFileAllocationEntry.cc +++ b/src/BtFileAllocationEntry.cc @@ -81,6 +81,13 @@ void BtFileAllocationEntry::prepareForNextAction( std::end(fileEntries))) { rg->createNextCommandWithAdj(commands, e, 0); } + + try { + rg->saveControlFile(); + } + catch (RecoverableException& e) { + A2_LOG_ERROR_EX(EX_EXCEPTION_CAUGHT, e); + } } else { #ifdef __MINGW32__ diff --git a/src/StreamFileAllocationEntry.cc b/src/StreamFileAllocationEntry.cc index fdb16f60..97011dd1 100644 --- a/src/StreamFileAllocationEntry.cc +++ b/src/StreamFileAllocationEntry.cc @@ -46,6 +46,7 @@ #include "FileEntry.h" #include "PieceStorage.h" #include "DiskAdaptor.h" +#include "LogFactory.h" namespace aria2 { @@ -97,6 +98,15 @@ void StreamFileAllocationEntry::prepareForNextAction( else { rg->createNextCommandWithAdj(commands, e, 0); } + + if (!rg->allDownloadFinished()) { + try { + rg->saveControlFile(); + } + catch (RecoverableException& e) { + A2_LOG_ERROR_EX(EX_EXCEPTION_CAUGHT, e); + } + } } } // namespace aria2 |
