diff options
-rw-r--r-- | sway/ipc-server.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sway/ipc-server.c b/sway/ipc-server.c index 0cacc515..3600cab2 100644 --- a/sway/ipc-server.c +++ b/sway/ipc-server.c | |||
@@ -161,7 +161,8 @@ int ipc_handle_connection(int fd, uint32_t mask, void *data) { | |||
161 | } | 161 | } |
162 | 162 | ||
163 | int flags; | 163 | int flags; |
164 | if ((flags=fcntl(client_fd, F_GETFD)) == -1 || fcntl(client_fd, F_SETFD, flags|FD_CLOEXEC) == -1) { | 164 | if ((flags = fcntl(client_fd, F_GETFD)) == -1 |
165 | || fcntl(client_fd, F_SETFD, flags|FD_CLOEXEC) == -1) { | ||
165 | sway_log_errno(L_ERROR, "Unable to set CLOEXEC on IPC client socket"); | 166 | sway_log_errno(L_ERROR, "Unable to set CLOEXEC on IPC client socket"); |
166 | close(client_fd); | 167 | close(client_fd); |
167 | return 0; | 168 | return 0; |
@@ -199,6 +200,8 @@ int ipc_client_handle_readable(int client_fd, uint32_t mask, void *data) { | |||
199 | } | 200 | } |
200 | 201 | ||
201 | if (mask & WLC_EVENT_HANGUP) { | 202 | if (mask & WLC_EVENT_HANGUP) { |
203 | sway_log(L_DEBUG, "Client %d hung up", client->fd); | ||
204 | close(client->fd); | ||
202 | client->fd = -1; | 205 | client->fd = -1; |
203 | ipc_client_disconnect(client); | 206 | ipc_client_disconnect(client); |
204 | return 0; | 207 | return 0; |