diff options
| author | Eyal Sawady <ecs@d2evs.net> | 2021-05-16 15:53:47 -0400 |
|---|---|---|
| committer | Drew DeVault <sir@cmpwn.com> | 2021-05-16 15:54:16 -0400 |
| commit | b9a92193e96bbe621ebc8430d8308d45a5b86cef (patch) | |
| tree | 367248856582f3bbb603737766792c3eb6b55c3b /src | |
| parent | 53e4ce4abd53ced1a9b527cbcddebdc3f58ab0a9 (diff) | |
| download | gmnisrv-b9a92193e96bbe621ebc8430d8308d45a5b86cef.tar.gz gmnisrv-b9a92193e96bbe621ebc8430d8308d45a5b86cef.tar.xz gmnisrv-b9a92193e96bbe621ebc8430d8308d45a5b86cef.zip | |
disconnect_client: fix index calculation
This was sometimes causing a gmnisrv_client to be overwritten by the
deinitialized client, which occasionally lead to a segfault when we
later tried to use it.
Diffstat (limited to 'src')
| -rw-r--r-- | src/server.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/server.c b/src/server.c index dac772b..e199f6f 100644 --- a/src/server.c +++ b/src/server.c @@ -200,7 +200,7 @@ disconnect_client(struct gmnisrv_server *server, struct gmnisrv_client *client) free(client->path); client->path = NULL; - size_t index = (client - server->clients) / sizeof(struct gmnisrv_client); + size_t index = client - server->clients; memmove(&server->clients[index], &server->clients[index + 1], (server->clientsz - (index + 1)) * sizeof(struct gmnisrv_client)); |
