diff --git a/TransitTunnel.cpp b/TransitTunnel.cpp index a3135db1..e0828f13 100644 --- a/TransitTunnel.cpp +++ b/TransitTunnel.cpp @@ -27,8 +27,6 @@ namespace tunnel TransitTunnelParticipant::~TransitTunnelParticipant () { - for (auto it: m_TunnelDataMsgs) - i2p::DeleteI2NPMessage (it); } void TransitTunnelParticipant::HandleTunnelDataMsg (i2p::I2NPMessage * tunnelMsg) @@ -38,7 +36,7 @@ namespace tunnel m_NumTransmittedBytes += tunnelMsg->GetLength (); htobe32buf (tunnelMsg->GetPayload (), GetNextTunnelID ()); FillI2NPMessageHeader (tunnelMsg, eI2NPTunnelData); - m_TunnelDataMsgs.push_back (tunnelMsg); + m_TunnelDataMsgs.push_back (ToSharedI2NPMessage (tunnelMsg)); } void TransitTunnelParticipant::FlushTunnelDataMsgs () diff --git a/TransitTunnel.h b/TransitTunnel.h index a2a0347f..3f7d8676 100644 --- a/TransitTunnel.h +++ b/TransitTunnel.h @@ -4,6 +4,7 @@ #include #include #include +#include #include "aes.h" #include "I2NPProtocol.h" #include "TunnelEndpoint.h" @@ -59,7 +60,7 @@ namespace tunnel private: size_t m_NumTransmittedBytes; - std::vector m_TunnelDataMsgs; + std::vector > m_TunnelDataMsgs; }; class TransitTunnelGateway: public TransitTunnel