diff --git a/ChangeLog b/ChangeLog index 295073f2..7098c4dd 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,17 @@ +2009-10-05 Tatsuhiro Tsujikawa + + Don't save control file when aria2 exists while checking piece + hash(behavior of -V option). If control file doesn't exist when + aria2 launched, the completed length in saved control file will be + 0 byte and this confuses user. disableSaveControlFile() is called + in RequestGroup::processCheckIntegrityEntry(). + enableSaveControlFile() will be called after hash checking is + done. See CheckIntegrityCommand. + * src/CheckIntegrityCommand.cc + * src/RequestGroup.cc + * src/RequestGroup.h + * src/RequestGroupMan.cc + 2009-10-05 Tatsuhiro Tsujikawa Included version number in Peer ID and client version. Peer ID diff --git a/src/CheckIntegrityCommand.cc b/src/CheckIntegrityCommand.cc index d7b92a2e..c3c0ca73 100644 --- a/src/CheckIntegrityCommand.cc +++ b/src/CheckIntegrityCommand.cc @@ -60,7 +60,10 @@ bool CheckIntegrityCommand::executeInternal() _entry->validateChunk(); if(_entry->finished()) { _e->_checkIntegrityMan->dropPickedEntry(); - + // Enable control file saving here. See also + // RequestGroup::processCheckIntegrityEntry() to know why this is + // needed. + _requestGroup->enableSaveControlFile(); if(_requestGroup->downloadFinished()) { logger->notice(MSG_VERIFICATION_SUCCESSFUL, _requestGroup->getDownloadContext()->getBasePath().c_str()); diff --git a/src/RequestGroup.cc b/src/RequestGroup.cc index 95531fc5..6dbb70a4 100644 --- a/src/RequestGroup.cc +++ b/src/RequestGroup.cc @@ -118,6 +118,7 @@ RequestGroup::RequestGroup(const SharedHandle