summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKenny Levinsen <kl@kl.wtf>2020-11-10 14:05:43 +0100
committerDrew DeVault <sir@cmpwn.com>2020-11-10 08:06:37 -0500
commit9fd9eef9d7f850ccc1f8d5fe4dc60df461a5dbc2 (patch)
treedb81b571f2f8c036e46e9bdecec4c2b322695f8a /src
parentfdd27bb4c1f1fb05481368c214e0f0f30a81b0ca (diff)
downloadgmnisrv-9fd9eef9d7f850ccc1f8d5fe4dc60df461a5dbc2.tar.gz
gmnisrv-9fd9eef9d7f850ccc1f8d5fe4dc60df461a5dbc2.tar.xz
gmnisrv-9fd9eef9d7f850ccc1f8d5fe4dc60df461a5dbc2.zip
Fix use of wrong index during pollfd refresh
The right side of the refresh ended up using the index of the deleted client instead of the index from the loop, which happens to work when the destroyed client is either last or second-last.
Diffstat (limited to 'src')
-rw-r--r--src/server.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/server.c b/src/server.c
index e7566bf..dac772b 100644
--- a/src/server.c
+++ b/src/server.c
@@ -211,7 +211,7 @@ disconnect_client(struct gmnisrv_server *server, struct gmnisrv_client *client)
--server->nclients;
for (size_t idx = index; idx < server->nclients; idx++) {
- server->clients[idx].pollfd = &server->fds[server->nlisten + index];
+ server->clients[idx].pollfd = &server->fds[server->nlisten + idx];
}
}