diff --git a/src/connector.c b/src/connector.c index 60354661..d3f68ac8 100644 --- a/src/connector.c +++ b/src/connector.c @@ -492,7 +492,8 @@ void *receiver(void *arg) client = event.data.ptr; /* Recheck this client still exists in the same form when it * was queued. */ - if (unlikely(client != ref_client_by_id(cdata, client->id))) + client = ref_client_by_id(cdata, client->id); + if (unlikely(!client)) continue; if (event.events & (EPOLLERR | EPOLLHUP | EPOLLRDHUP)) { /* Client disconnected */