From cedd64c283794c5b6593f308cddde2cdab7c2bcf Mon Sep 17 00:00:00 2001 From: Kenny Levinsen Date: Sat, 27 Feb 2021 21:22:45 +0100 Subject: client: Remove link if seat_add_client succeeds Removing the link before before means that we can return without a link, resulting in a double-remove. --- seatd/client.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'seatd') diff --git a/seatd/client.c b/seatd/client.c index 949bbd8..286a3ae 100644 --- a/seatd/client.c +++ b/seatd/client.c @@ -145,11 +145,11 @@ static int handle_open_seat(struct client *client) { return -1; } - linked_list_remove(&client->link); if (seat_add_client(seat, client) == -1) { log_errorf("unable to add client to target seat: %s", strerror(errno)); return -1; } + linked_list_remove(&client->link); linked_list_insert(&seat->clients, &client->link); size_t seat_name_len = strlen(seat_name); -- cgit v1.2.3