diff --git a/src/connector.c b/src/connector.c index 96274f2f..1df23262 100644 --- a/src/connector.c +++ b/src/connector.c @@ -333,12 +333,12 @@ static int __drop_client(cdata_t *cdata, client_instance_t *client) goto out; client->invalid = true; ret = client->fd; + /* Closing the fd will automatically remove it from the epoll list */ Close(client->fd); - epoll_ctl(cdata->epfd, EPOLL_CTL_DEL, ret, NULL); HASH_DEL(cdata->clients, client); DL_APPEND(cdata->dead_clients, client); /* This is the reference to this client's presence in the - * epoll list. */ + * epoll list. */ __dec_instance_ref(client); cdata->dead_generated++; out: