WindowServer: Fix client fd leaks

This commit is contained in:
2026-06-23 21:08:57 +03:00
parent 4ad586552d
commit 763a742f6d

View File

@@ -380,6 +380,7 @@ int main()
{ {
epoll_ctl(g_epoll_fd, EPOLL_CTL_DEL, client_fd, nullptr); epoll_ctl(g_epoll_fd, EPOLL_CTL_DEL, client_fd, nullptr);
window_server.remove_client_fd(client_fd); window_server.remove_client_fd(client_fd);
close(client_fd);
continue; continue;
} }
@@ -395,6 +396,7 @@ int main()
dwarnln("send: {}", strerror(errno)); dwarnln("send: {}", strerror(errno));
epoll_ctl(g_epoll_fd, EPOLL_CTL_DEL, client_fd, nullptr); epoll_ctl(g_epoll_fd, EPOLL_CTL_DEL, client_fd, nullptr);
window_server.remove_client_fd(client_fd); window_server.remove_client_fd(client_fd);
close(client_fd);
break; break;
} }
@@ -434,6 +436,7 @@ int main()
dwarnln("recv: {}", strerror(errno)); dwarnln("recv: {}", strerror(errno));
epoll_ctl(g_epoll_fd, EPOLL_CTL_DEL, client_fd, nullptr); epoll_ctl(g_epoll_fd, EPOLL_CTL_DEL, client_fd, nullptr);
window_server.remove_client_fd(client_fd); window_server.remove_client_fd(client_fd);
close(client_fd);
break; break;
} }
if (nrecv > 0) if (nrecv > 0)
@@ -494,6 +497,7 @@ int main()
dwarnln("client tried to send a {} byte packet", header.size); dwarnln("client tried to send a {} byte packet", header.size);
epoll_ctl(g_epoll_fd, EPOLL_CTL_DEL, client_fd, nullptr); epoll_ctl(g_epoll_fd, EPOLL_CTL_DEL, client_fd, nullptr);
window_server.remove_client_fd(client_fd); window_server.remove_client_fd(client_fd);
close(client_fd);
break; break;
} }
} }