diff options
-rw-r--r-- | seatd/client.c | 1 | ||||
-rw-r--r-- | seatd/seat.c | 1 | ||||
-rw-r--r-- | seatd/server.c | 2 |
3 files changed, 2 insertions, 2 deletions
diff --git a/seatd/client.c b/seatd/client.c index bd46a86..8562c8b 100644 --- a/seatd/client.c +++ b/seatd/client.c @@ -89,6 +89,7 @@ void client_destroy(struct client *client) { } connection_close_fds(&client->connection); assert(linked_list_empty(&client->devices)); + linked_list_remove(&client->link); free(client); } diff --git a/seatd/seat.c b/seatd/seat.c index fee727c..7d62173 100644 --- a/seatd/seat.c +++ b/seatd/seat.c @@ -44,6 +44,7 @@ void seat_destroy(struct seat *seat) { } assert(seat->curttyfd == -1); + linked_list_remove(&seat->link); free(seat->seat_name); free(seat); } diff --git a/seatd/server.c b/seatd/server.c index 1da8041..c31fbba 100644 --- a/seatd/server.c +++ b/seatd/server.c @@ -54,12 +54,10 @@ void server_finish(struct server *server) { assert(server); while (!linked_list_empty(&server->idle_clients)) { struct client *client = (struct client *)server->idle_clients.next; - linked_list_remove(&client->link); client_destroy(client); } while (!linked_list_empty(&server->seats)) { struct seat *seat = (struct seat *)server->seats.next; - linked_list_remove(&seat->link); seat_destroy(seat); } poller_finish(&server->poller); |