summaryrefslogtreecommitdiff
path: root/src/PeerAbstractCommand.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2008-05-17 09:15:14 +0000
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2008-05-17 09:15:14 +0000
commit7c6ed037e3fad09b19915120516a39b55045059d (patch)
treef137ff93a7ac1d83595b1da1aab1aec2b648ea6d /src/PeerAbstractCommand.cc
parentb5f1ca6f660722b75dc9a571e61561cd4bae9787 (diff)
2008-05-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Don't add closed socket to DownloadEngine::addSocketForReadCheck() * src/AbstractCommand.cc * src/AbstractCommand.h * src/ActivePeerConnectionCommand.cc * src/FtpInitiateConnectionCommand.cc * src/HttpInitiateConnectionCommand.cc * src/InitiateConnectionCommandFactory.cc * src/PeerAbstractCommand.cc * src/PeerAbstractCommand.h * src/PeerInitiateConnectionCommand.cc * src/TrackerWatcherCommand.cc
Diffstat (limited to 'src/PeerAbstractCommand.cc')
-rw-r--r--src/PeerAbstractCommand.cc15
1 files changed, 3 insertions, 12 deletions
diff --git a/src/PeerAbstractCommand.cc b/src/PeerAbstractCommand.cc
index d8ee695f..05a2ba6a 100644
--- a/src/PeerAbstractCommand.cc
+++ b/src/PeerAbstractCommand.cc
@@ -52,18 +52,9 @@ PeerAbstractCommand::PeerAbstractCommand(int32_t cuid,
checkSocketIsReadable(false), checkSocketIsWritable(false),
uploadLimitCheck(false), uploadLimit(0), noCheck(false)
{
- setReadCheckSocket(socket);
- timeout = e->option->getAsInt(PREF_BT_TIMEOUT);
-}
-
-PeerAbstractCommand::PeerAbstractCommand(int32_t cuid,
- const PeerHandle& peer,
- DownloadEngine* e)
- :Command(cuid), e(e), socket(new SocketCore()), peer(peer),
- checkSocketIsReadable(false), checkSocketIsWritable(false),
- uploadLimitCheck(false), uploadLimit(0), noCheck(false)
-{
- setReadCheckSocket(socket);
+ if(!socket.isNull() && socket->isOpen()) {
+ setReadCheckSocket(socket);
+ }
timeout = e->option->getAsInt(PREF_BT_TIMEOUT);
}