diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2008-09-14 13:43:34 +0000 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2008-09-14 13:43:34 +0000 |
| commit | 0680ac5e5ed2426ed01d735bca5fbb57d6c925bb (patch) | |
| tree | 0763565d76353f8a29f5bc2dddfaa7595bb88112 /src/PeerAbstractCommand.cc | |
| parent | 81b2e6e1089f7765c246a7476df080db2f3499c6 (diff) | |
2008-09-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
If error event is received in epoll, then abort download
immediately.
* src/AbstractCommand.cc
* src/Command.cc
* src/Command.h
* src/DownloadEngine.cc
* src/PeerAbstractCommand.cc
Diffstat (limited to 'src/PeerAbstractCommand.cc')
| -rw-r--r-- | src/PeerAbstractCommand.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/PeerAbstractCommand.cc b/src/PeerAbstractCommand.cc index bd525db8..26f9e7d9 100644 --- a/src/PeerAbstractCommand.cc +++ b/src/PeerAbstractCommand.cc @@ -81,8 +81,10 @@ bool PeerAbstractCommand::execute() if(noCheck || (checkSocketIsReadable && _readEvent) || (checkSocketIsWritable && _writeEvent) || - _errorEvent) { + _hupEvent) { checkPoint.reset(); + } else if(_errorEvent) { + throw DlAbortEx("Network problem has occurred."); } if(checkPoint.elapsed(timeout)) { throw DlAbortEx(EX_TIME_OUT); |
