mirror of
https://github.com/PurpleI2P/i2pd.git
synced 2025-02-08 22:13:48 +01:00
fixed potential memory leak
This commit is contained in:
parent
864aba9f4e
commit
5d2f9f9f0b
1 changed files with 26 additions and 8 deletions
|
@ -227,10 +227,19 @@ namespace transport
|
||||||
auto it = m_Peers.find (ident);
|
auto it = m_Peers.find (ident);
|
||||||
if (it == m_Peers.end ())
|
if (it == m_Peers.end ())
|
||||||
{
|
{
|
||||||
auto r = netdb.FindRouter (ident);
|
bool connected = false;
|
||||||
it = m_Peers.insert (std::pair<i2p::data::IdentHash, Peer>(ident, { 0, r, nullptr,
|
try
|
||||||
i2p::util::GetSecondsSinceEpoch () })).first;
|
{
|
||||||
if (!ConnectToPeer (ident, it->second))
|
auto r = netdb.FindRouter (ident);
|
||||||
|
it = m_Peers.insert (std::pair<i2p::data::IdentHash, Peer>(ident, { 0, r, nullptr,
|
||||||
|
i2p::util::GetSecondsSinceEpoch () })).first;
|
||||||
|
connected= ConnectToPeer (ident, it->second);
|
||||||
|
}
|
||||||
|
catch (std::exception& ex)
|
||||||
|
{
|
||||||
|
LogPrint (eLogError, "Transports::PostMessage ", ex.what ());
|
||||||
|
}
|
||||||
|
if (!connected)
|
||||||
{
|
{
|
||||||
DeleteI2NPMessage (msg);
|
DeleteI2NPMessage (msg);
|
||||||
return;
|
return;
|
||||||
|
@ -254,10 +263,19 @@ namespace transport
|
||||||
auto it = m_Peers.find (ident);
|
auto it = m_Peers.find (ident);
|
||||||
if (it == m_Peers.end ())
|
if (it == m_Peers.end ())
|
||||||
{
|
{
|
||||||
auto r = netdb.FindRouter (ident);
|
bool connected = false;
|
||||||
it = m_Peers.insert (std::pair<i2p::data::IdentHash, Peer>(ident, { 0, r, nullptr,
|
try
|
||||||
i2p::util::GetSecondsSinceEpoch () })).first;
|
{
|
||||||
if (!ConnectToPeer (ident, it->second))
|
auto r = netdb.FindRouter (ident);
|
||||||
|
it = m_Peers.insert (std::pair<i2p::data::IdentHash, Peer>(ident, { 0, r, nullptr,
|
||||||
|
i2p::util::GetSecondsSinceEpoch () })).first;
|
||||||
|
connected = ConnectToPeer (ident, it->second);
|
||||||
|
}
|
||||||
|
catch (std::exception& ex)
|
||||||
|
{
|
||||||
|
LogPrint (eLogError, "Transports::PostMessages ", ex.what ());
|
||||||
|
}
|
||||||
|
if (!connected)
|
||||||
{
|
{
|
||||||
for (auto it1: msgs)
|
for (auto it1: msgs)
|
||||||
DeleteI2NPMessage (it1);
|
DeleteI2NPMessage (it1);
|
||||||
|
|
Loading…
Add table
Reference in a new issue