diff --git a/libi2pd/Streaming.cpp b/libi2pd/Streaming.cpp index 71b25f1c..81c09c84 100644 --- a/libi2pd/Streaming.cpp +++ b/libi2pd/Streaming.cpp @@ -1285,7 +1285,12 @@ namespace stream auto it = m_Streams.find (recvStreamID); if (it == m_Streams.end ()) return false; - DeleteStream (it->second); + m_Owner->GetService ().post ([this, s = it->second]() + { + s->Close (); // try to send FIN + s->Terminate (false); + DeleteStream (s); + }); return true; }