From cfddaf1508b59217dd59e3d945f709f22de97d25 Mon Sep 17 00:00:00 2001 From: SChernykh Date: Sun, 3 Sep 2023 23:12:37 +0200 Subject: [PATCH] TCPServer: added thread check on connection close --- src/tcp_server.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/tcp_server.cpp b/src/tcp_server.cpp index 882b649..d1e2292 100644 --- a/src/tcp_server.cpp +++ b/src/tcp_server.cpp @@ -419,6 +419,7 @@ void TCPServer::check_event_loop_thread(const char* func) const { if (server_event_loop_thread != this) { LOGERR(1, func << " called from another thread, this is not thread safe"); + PANIC_STOP(); } } #endif @@ -1213,9 +1214,10 @@ void TCPServer::Client::close() // Already closed return; } - m_isClosing = true; + m_owner->check_event_loop_thread(__func__); + uv_read_stop(reinterpret_cast(&m_socket)); uv_tcp_t* s = &m_socket;