diff options
| -rw-r--r-- | seatd/client.c | 3 | ||||
| -rw-r--r-- | seatd/seat.c | 6 | 
2 files changed, 3 insertions, 6 deletions
| diff --git a/seatd/client.c b/seatd/client.c index 60e6d55..1adc2d9 100644 --- a/seatd/client.c +++ b/seatd/client.c @@ -76,8 +76,6 @@ void client_kill(struct client *client) {  	assert(client);  	if (client->connection.fd != -1) {  		shutdown(client->connection.fd, SHUT_RDWR); -		close(client->connection.fd); -		client->connection.fd = -1;  	};  	if (client->seat != NULL) {  		seat_remove_client(client); @@ -96,7 +94,6 @@ void client_destroy(struct client *client) {  		client->event_source = NULL;  	}  	if (client->connection.fd != -1) { -		shutdown(client->connection.fd, SHUT_RDWR);  		close(client->connection.fd);  		client->connection.fd = -1;  	} diff --git a/seatd/seat.c b/seatd/seat.c index 8650e2b..37f2b00 100644 --- a/seatd/seat.c +++ b/seatd/seat.c @@ -40,7 +40,7 @@ void seat_destroy(struct seat *seat) {  	while (!linked_list_empty(&seat->clients)) {  		struct client *client = (struct client *)seat->clients.next;  		// This will cause the client to remove itself from the seat -		assert(client->seat); +		assert(client->seat == seat);  		client_kill(client);  	}  	assert(seat->curttyfd == -1); @@ -367,7 +367,7 @@ int seat_open_client(struct seat *seat, struct client *client) {  	seat->active_client = client;  	if (client_send_enable_seat(client) == -1) { -		seat_remove_client(client); +		log_error("could not send enable signal");  		return -1;  	} @@ -428,7 +428,7 @@ static int seat_disable_client(struct client *client) {  	client->pending_disable = true;  	if (client_send_disable_seat(seat->active_client) == -1) { -		seat_remove_client(client); +		log_error("could not send disable event");  		return -1;  	} | 
