diff --git a/libi2pd/Transports.cpp b/libi2pd/Transports.cpp index edf864ca..b9971a77 100644 --- a/libi2pd/Transports.cpp +++ b/libi2pd/Transports.cpp @@ -964,8 +964,13 @@ namespace transport } else { - std::lock_guard l(m_PeersMutex); - m_Peers.erase (it); + { + std::lock_guard l(m_PeersMutex); + m_Peers.erase (it); + } + // delete buffer of just disconnected router + auto r = i2p::data::netdb.FindRouter (ident); + if (r && !r->IsUpdated ()) r->ScheduleBufferToDelete (); } } }