2009-03-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>

Throw exception if same infohash torrent is now downloading.
	* src/RequestGroup.cc
pull/1/head
Tatsuhiro Tsujikawa 2009-03-08 12:47:33 +00:00
parent 6187d6e506
commit bb3a55d080
2 changed files with 11 additions and 2 deletions

View File

@ -1,3 +1,8 @@
2009-03-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Throw exception if same infohash torrent is now downloading.
* src/RequestGroup.cc
2009-03-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added --dry-run option. In this mode, aria2 just checks whether

View File

@ -209,6 +209,12 @@ void RequestGroup::createInitialCommand(std::deque<Command*>& commands,
throw DownloadFailureException
("Cancel BitTorrent download in dry-run context.");
}
SharedHandle<BtRegistry> btRegistry = e->getBtRegistry();
if(!btRegistry->getBtContext(btContext->getInfoHashAsString()).isNull()) {
throw DownloadFailureException
(StringFormat("InfoHash %s is already registered.",
btContext->getInfoHashAsString().c_str()).str());
}
if(e->_requestGroupMan->isSameFileBeingDownloaded(this)) {
throw DownloadFailureException
@ -231,8 +237,6 @@ void RequestGroup::createInitialCommand(std::deque<Command*>& commands,
_pieceStorage,
_option));
SharedHandle<BtRegistry> btRegistry = e->getBtRegistry();
btRegistry->registerBtContext(btContext->getInfoHashAsString(),
btContext);
btRegistry->registerPieceStorage(btContext->getInfoHashAsString(),