aboutsummaryrefslogtreecommitdiffstats
path: root/common/ipc-client.c
diff options
context:
space:
mode:
Diffstat (limited to 'common/ipc-client.c')
-rw-r--r--common/ipc-client.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/common/ipc-client.c b/common/ipc-client.c
index 1e88e71f..79ed3555 100644
--- a/common/ipc-client.c
+++ b/common/ipc-client.c
@@ -22,9 +22,13 @@ char *get_socketpath(void) {
22 size_t line_size = 0; 22 size_t line_size = 0;
23 FILE *fp = popen("sway --get-socketpath 2>/dev/null", "r"); 23 FILE *fp = popen("sway --get-socketpath 2>/dev/null", "r");
24 if (fp) { 24 if (fp) {
25 getline(&line, &line_size, fp); 25 ssize_t nret = getline(&line, &line_size, fp);
26 pclose(fp); 26 pclose(fp);
27 if (line && *line) { 27 if (nret > 0) {
28 // remove trailing newline, if there is one
29 if (line[nret - 1] == '\n') {
30 line[nret - 1] = '\0';
31 }
28 return line; 32 return line;
29 } 33 }
30 } 34 }
@@ -35,9 +39,13 @@ char *get_socketpath(void) {
35 } 39 }
36 fp = popen("i3 --get-socketpath 2>/dev/null", "r"); 40 fp = popen("i3 --get-socketpath 2>/dev/null", "r");
37 if (fp) { 41 if (fp) {
38 getline(&line, &line_size, fp); 42 ssize_t nret = getline(&line, &line_size, fp);
39 pclose(fp); 43 pclose(fp);
40 if (line && *line) { 44 if (nret > 0) {
45 // remove trailing newline, if there is one
46 if (line[nret - 1] == '\n') {
47 line[nret - 1] = '\0';
48 }
41 return line; 49 return line;
42 } 50 }
43 } 51 }