From 69a9bed21f18728483320e88530045180796e2ac Mon Sep 17 00:00:00 2001 From: Determinant Date: Thu, 4 Jul 2019 00:28:30 -0400 Subject: improve dispatcher shutdown --- src/conn.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/conn.cpp b/src/conn.cpp index 13486ee..5e663b6 100644 --- a/src/conn.cpp +++ b/src/conn.cpp @@ -273,15 +273,19 @@ void ConnPool::disp_terminate(const conn_t &conn) { }); } -void ConnPool::accept_client(int fd, int) { +void ConnPool::accept_client(int fd, int events) { int client_fd; struct sockaddr client_addr; try { socklen_t addr_size = sizeof(struct sockaddr_in); if ((client_fd = accept(fd, &client_addr, &addr_size)) < 0) + { + ev_listen.del(); throw ConnPoolError(SALTI_ERROR_ACCEPT, errno); + } else { + SALTICIDAE_LOG_INFO("%d\n", events); int one = 1; if (setsockopt(client_fd, SOL_TCP, TCP_NODELAY, (const char *)&one, sizeof(one)) < 0) throw ConnPoolError(SALTI_ERROR_ACCEPT, errno); -- cgit v1.2.3