Browse Source

fixed crash on termination

pull/113/head
orignal 10 years ago
parent
commit
08762870b4
  1. 13
      SAM.h

13
SAM.h

@ -72,14 +72,15 @@ namespace client @@ -72,14 +72,15 @@ namespace client
SAMSocket (SAMBridge& owner);
~SAMSocket ();
void CloseStream (); // TODO: implement it better
void CloseStream (); // TODO: implement it better
boost::asio::ip::tcp::socket& GetSocket () { return m_Socket; };
void ReceiveHandshake ();
void SetSocketType (SAMSocketType socketType) { m_SocketType = socketType; };
private:
void Terminate ();
void Terminate ();
void HandleHandshakeReceived (const boost::system::error_code& ecode, std::size_t bytes_transferred);
void HandleHandshakeReplySent (const boost::system::error_code& ecode, std::size_t bytes_transferred);
void HandleMessage (const boost::system::error_code& ecode, std::size_t bytes_transferred);
@ -126,6 +127,12 @@ namespace client @@ -126,6 +127,12 @@ namespace client
{
ClientDestination * localDestination;
std::list<std::shared_ptr<SAMSocket> > sockets;
~SAMSession ()
{
for (auto it: sockets)
it->SetSocketType (eSAMSocketTypeTerminated);
}
};
class SAMBridge

Loading…
Cancel
Save