aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFurkan Sahin <furkan-dev@proton.me>2025-06-05 13:46:06 +0800
committerFurkan Sahin <furkan-dev@proton.me>2025-06-05 13:46:06 +0800
commitf2adabbfc787a4b02cd8d30cbb44a03e3abfc8be (patch)
tree9b947dfee150482adf015942d8d574fe0c2d57c7
parent3bc0753f3915f5d28e89d3f9359a69552f02a6a7 (diff)
server: fix socket path memory leak
The socket path allocated with strdup() in server_init() was not being freed in server_fini(). Remove const qualifier and add proper cleanup.
-rw-r--r--include/sway/server.h2
-rw-r--r--sway/server.c1
2 files changed, 2 insertions, 1 deletions
diff --git a/include/sway/server.h b/include/sway/server.h
index e7d7094f..1cb72e77 100644
--- a/include/sway/server.h
+++ b/include/sway/server.h
@@ -27,7 +27,7 @@ struct sway_session_lock {
struct sway_server {
struct wl_display *wl_display;
struct wl_event_loop *wl_event_loop;
- const char *socket;
+ char *socket;
struct wlr_backend *backend;
struct wlr_session *session;
diff --git a/sway/server.c b/sway/server.c
index 97976148..e8a6ce64 100644
--- a/sway/server.c
+++ b/sway/server.c
@@ -502,6 +502,7 @@ void server_fini(struct sway_server *server) {
wlr_backend_destroy(server->backend);
wl_display_destroy(server->wl_display);
list_free(server->dirty_nodes);
+ free(server->socket);
}
bool server_start(struct sway_server *server) {