#6526 Fixed crash when socket is null on handling TCP connection, and added some logging

This commit is contained in:
walker0643 2018-02-01 11:18:13 -05:00 committed by Nick Bolton
parent 80e14562f7
commit a205544b3d
2 changed files with 10 additions and 0 deletions

View File

@ -869,5 +869,9 @@ SecureSocket::showSecureConnectInfo()
void void
SecureSocket::handleTCPConnected(const Event& event, void*) SecureSocket::handleTCPConnected(const Event& event, void*)
{ {
if (getSocket() == nullptr) {
LOG((CLOG_DEBUG "disregarding stale connect event"));
return;
}
secureConnect(); secureConnect();
} }

View File

@ -51,6 +51,8 @@ TCPSocket::TCPSocket(IEventQueue* events, SocketMultiplexer* socketMultiplexer,
throw XSocketCreate(e.what()); throw XSocketCreate(e.what());
} }
LOG((CLOG_DEBUG "Opening new socket: %08X", m_socket));
init(); init();
} }
@ -64,6 +66,8 @@ TCPSocket::TCPSocket(IEventQueue* events, SocketMultiplexer* socketMultiplexer,
{ {
assert(m_socket != NULL); assert(m_socket != NULL);
LOG((CLOG_DEBUG "Opening new socket: %08X", m_socket));
// socket starts in connected state // socket starts in connected state
init(); init();
onConnected(); onConnected();
@ -97,6 +101,8 @@ TCPSocket::bind(const NetworkAddress& addr)
void void
TCPSocket::close() TCPSocket::close()
{ {
LOG((CLOG_DEBUG "Closing socket: %08X", m_socket));
// remove ourself from the multiplexer // remove ourself from the multiplexer
setJob(NULL); setJob(NULL);