Browse Source

proper termination

pull/100/head
orignal 10 years ago
parent
commit
11402708da
  1. 5
      Queue.h
  2. 1
      Transports.cpp

5
Queue.h

@ -134,13 +134,14 @@ namespace util
} }
if (m_OnEmpty != nullptr) if (m_OnEmpty != nullptr)
m_OnEmpty (); m_OnEmpty ();
Queue<Msg>::Wait (); if (m_IsRunning)
Queue<Msg>::Wait ();
} }
} }
private: private:
bool m_IsRunning; volatile bool m_IsRunning;
std::thread m_Thread; std::thread m_Thread;
OnEmpty m_OnEmpty; OnEmpty m_OnEmpty;
}; };

1
Transports.cpp

@ -142,6 +142,7 @@ namespace i2p
delete session.second; delete session.second;
m_NTCPSessions.clear (); m_NTCPSessions.clear ();
delete m_NTCPAcceptor; delete m_NTCPAcceptor;
m_NTCPAcceptor = nullptr;
m_DHKeysPairSupplier.Stop (); m_DHKeysPairSupplier.Stop ();
m_IsRunning = false; m_IsRunning = false;

Loading…
Cancel
Save