diff options
author | Rouven Czerwinski <rouven@czerwinskis.de> | 2019-02-21 08:37:23 +0100 |
---|---|---|
committer | Rouven Czerwinski <rouven@czerwinskis.de> | 2019-02-21 11:32:55 +0100 |
commit | aa4ccd845cf93ac2117b12083fed748f4c01e744 (patch) | |
tree | 0d767521d37717c97363d5f60c59cf10418352d4 | |
parent | ipc-client: free payload after sending it over the socket (diff) | |
download | sway-aa4ccd845cf93ac2117b12083fed748f4c01e744.tar.gz sway-aa4ccd845cf93ac2117b12083fed748f4c01e744.tar.zst sway-aa4ccd845cf93ac2117b12083fed748f4c01e744.zip |
run_as_ipc_client: free response after running the IPC command
Fixes memory leaks in the form of:
Direct leak of 24 byte(s) in 1 object(s) allocated from:
#0 0x7f5f7c2f4f30 in __interceptor_malloc (/usr/lib/x86_64-linux-gnu/libasan.so.5+0xedf30)
#1 0x563c799569f2 in ipc_recv_response ../common/ipc-client.c:94
#2 0x563c79957062 in ipc_single_command ../common/ipc-client.c:138
#3 0x563c798a56cc in run_as_ipc_client ../sway/main.c:127
#4 0x563c798a6a3a in main ../sway/main.c:349
#5 0x7f5f7b4d609a in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x2409a)
-rw-r--r-- | sway/main.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sway/main.c b/sway/main.c index 5a65e50c..6754190f 100644 --- a/sway/main.c +++ b/sway/main.c | |||
@@ -126,6 +126,7 @@ void run_as_ipc_client(char *command, char *socket_path) { | |||
126 | uint32_t len = strlen(command); | 126 | uint32_t len = strlen(command); |
127 | char *resp = ipc_single_command(socketfd, IPC_COMMAND, command, &len); | 127 | char *resp = ipc_single_command(socketfd, IPC_COMMAND, command, &len); |
128 | printf("%s\n", resp); | 128 | printf("%s\n", resp); |
129 | free(resp); | ||
129 | close(socketfd); | 130 | close(socketfd); |
130 | } | 131 | } |
131 | 132 | ||