summaryrefslogtreecommitdiff
path: root/src/LpdReceiveMessageCommand.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2010-02-22 16:11:33 +0000
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2010-02-22 16:11:33 +0000
commit232deb47b5af1c0a53c84da18c6cabe6637fcaa8 (patch)
tree4c1b077a1e416ba2334e2ccc73059401cb3cd0a5 /src/LpdReceiveMessageCommand.cc
parent6ae5882f3cb644369382583f0cea8d6de6dd3da0 (diff)
2010-02-23 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Return SharedHandle<LpdMessage>(new LpdMessage()) if received data is bad in LpdMessageReceiver. * src/LpdMessage.h * src/LpdMessageReceiver.cc * src/LpdMessageReceiver.h * src/LpdReceiveMessageCommand.cc * test/LpdMessageReceiverTest.cc
Diffstat (limited to 'src/LpdReceiveMessageCommand.cc')
-rw-r--r--src/LpdReceiveMessageCommand.cc4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/LpdReceiveMessageCommand.cc b/src/LpdReceiveMessageCommand.cc
index 29a6b18e..f3297f90 100644
--- a/src/LpdReceiveMessageCommand.cc
+++ b/src/LpdReceiveMessageCommand.cc
@@ -83,6 +83,10 @@ bool LpdReceiveMessageCommand::execute()
if(m.isNull()) {
break;
}
+ if(m->getPeer().isNull()) {
+ // bad message
+ continue;
+ }
SharedHandle<BtRegistry> reg = _e->getBtRegistry();
SharedHandle<DownloadContext> dctx =
reg->getDownloadContext(m->getInfoHash());