diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2010-03-04 16:24:03 +0000 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2010-03-04 16:24:03 +0000 |
| commit | 8b73c2843f659fe6cafd94534481e371888f0b5e (patch) | |
| tree | a228c40972e5a2053ef2837b8df7687019f99d9f /src/IndexBtMessage.cc | |
| parent | 5d05ef0e756a7c52673fcf78b4ab8c9ccee2154d (diff) | |
2010-03-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Reduced copying/std::string instantiation in sending/receiving
BitTorrent messages.
* src/BtBitfieldMessage.cc
* src/BtBitfieldMessage.h
* src/BtExtendedMessage.cc
* src/BtExtendedMessage.h
* src/BtHandshakeMessage.cc
* src/BtHandshakeMessage.h
* src/BtKeepAliveMessage.cc
* src/BtKeepAliveMessage.h
* src/BtPieceMessage.cc
* src/BtPieceMessage.h
* src/BtPortMessage.cc
* src/BtPortMessage.h
* src/BtUnchokeMessage.h
* src/DefaultBtMessageReceiver.cc
* src/IndexBtMessage.cc
* src/IndexBtMessage.h
* src/PeerConnection.cc
* src/PeerConnection.h
* src/RangeBtMessage.cc
* src/RangeBtMessage.h
* src/SimpleBtMessage.cc
* src/SimpleBtMessage.h
* src/SocketBuffer.cc
* src/SocketBuffer.h
* src/ZeroBtMessage.cc
* src/ZeroBtMessage.h
* test/BtAllowedFastMessageTest.cc
* test/BtBitfieldMessageTest.cc
* test/BtCancelMessageTest.cc
* test/BtChokeMessageTest.cc
* test/BtExtendedMessageTest.cc
* test/BtHandshakeMessageTest.cc
* test/BtHaveAllMessageTest.cc
* test/BtHaveMessageTest.cc
* test/BtHaveNoneMessageTest.cc
* test/BtInterestedMessageTest.cc
* test/BtKeepAliveMessageTest.cc
* test/BtNotInterestedMessageTest.cc
* test/BtPieceMessageTest.cc
* test/BtPortMessageTest.cc
* test/BtRejectMessageTest.cc
* test/BtRequestMessageTest.cc
* test/BtSuggestPieceMessageTest.cc
* test/BtUnchokeMessageTest.cc
Diffstat (limited to 'src/IndexBtMessage.cc')
| -rw-r--r-- | src/IndexBtMessage.cc | 24 |
1 files changed, 11 insertions, 13 deletions
diff --git a/src/IndexBtMessage.cc b/src/IndexBtMessage.cc index bede58fb..66d5d430 100644 --- a/src/IndexBtMessage.cc +++ b/src/IndexBtMessage.cc @@ -39,20 +39,18 @@ namespace aria2 { -const unsigned char* IndexBtMessage::getMessage() +unsigned char* IndexBtMessage::createMessage() { - if(!_msg) { - /** - * len --- 5, 4bytes - * id --- ?, 1byte - * piece index --- index, 4bytes - * total: 9bytes - */ - _msg = new unsigned char[MESSAGE_LENGTH]; - bittorrent::createPeerMessageString(_msg, MESSAGE_LENGTH, 5, getId()); - bittorrent::setIntParam(&_msg[5], _index); - } - return _msg; + /** + * len --- 5, 4bytes + * id --- ?, 1byte + * piece index --- index, 4bytes + * total: 9bytes + */ + unsigned char* msg = new unsigned char[MESSAGE_LENGTH]; + bittorrent::createPeerMessageString(msg, MESSAGE_LENGTH, 5, getId()); + bittorrent::setIntParam(&msg[5], _index); + return msg; } size_t IndexBtMessage::getMessageLength() |
