x0
x0 copied to clipboard
Fixes related to TcpConnector and TcpEndPoint
When TcpEndPoint was closed because of read timeout, TcpConnector::onEndPointClosed() was called repeatedly resulting to mutex deadlock.
Tested with hello_http:
- run hello_http
- open connection with netcat/socat without sending any data
- wait 60 seconds
- hello_http becomes unresponsive
I bundled another bugfix from the same area of code to this PR:
When TcpConnector is destroyed and it deallocates its list of endpoints, those endpoints call TcpConnector::onEndPointClosed() with bad results. This callback should be deactivated during the destruction of TcpConnector.