diff options
-rw-r--r-- | sway/tree/container.c | 2 | ||||
-rw-r--r-- | sway/tree/root.c | 2 | ||||
-rw-r--r-- | swaynag/config.c | 4 | ||||
-rw-r--r-- | swaynag/swaynag.c | 5 |
4 files changed, 7 insertions, 6 deletions
diff --git a/sway/tree/container.c b/sway/tree/container.c index 527759ba..09766ce5 100644 --- a/sway/tree/container.c +++ b/sway/tree/container.c | |||
@@ -1706,7 +1706,7 @@ static void update_marks_texture(struct sway_container *con, | |||
1706 | for (int i = 0; i < con->marks->length; ++i) { | 1706 | for (int i = 0; i < con->marks->length; ++i) { |
1707 | char *mark = con->marks->items[i]; | 1707 | char *mark = con->marks->items[i]; |
1708 | if (mark[0] != '_') { | 1708 | if (mark[0] != '_') { |
1709 | sprintf(part, "[%s]", mark); | 1709 | snprintf(part, len + 1, "[%s]", mark); |
1710 | strcat(buffer, part); | 1710 | strcat(buffer, part); |
1711 | } | 1711 | } |
1712 | } | 1712 | } |
diff --git a/sway/tree/root.c b/sway/tree/root.c index 73f3993c..8508e9eb 100644 --- a/sway/tree/root.c +++ b/sway/tree/root.c | |||
@@ -209,7 +209,7 @@ static pid_t get_parent_pid(pid_t child) { | |||
209 | FILE *stat = NULL; | 209 | FILE *stat = NULL; |
210 | size_t buf_size = 0; | 210 | size_t buf_size = 0; |
211 | 211 | ||
212 | sprintf(file_name, "/proc/%d/stat", child); | 212 | snprintf(file_name, sizeof(file_name), "/proc/%d/stat", child); |
213 | 213 | ||
214 | if ((stat = fopen(file_name, "r"))) { | 214 | if ((stat = fopen(file_name, "r"))) { |
215 | if (getline(&buffer, &buf_size, stat) != -1) { | 215 | if (getline(&buffer, &buf_size, stat) != -1) { |
diff --git a/swaynag/config.c b/swaynag/config.c index 6db7cce5..ede0938c 100644 --- a/swaynag/config.c +++ b/swaynag/config.c | |||
@@ -414,8 +414,8 @@ int swaynag_load_config(char *path, struct swaynag *swaynag, list_t *types) { | |||
414 | } | 414 | } |
415 | free(name); | 415 | free(name); |
416 | } else { | 416 | } else { |
417 | char *flag = malloc(sizeof(char) * (nread + 3)); | 417 | char *flag = malloc(nread + 3); |
418 | sprintf(flag, "--%s", line); | 418 | snprintf(flag, nread + 3, "--%s", line); |
419 | char *argv[] = {"swaynag", flag}; | 419 | char *argv[] = {"swaynag", flag}; |
420 | result = swaynag_parse_options(2, argv, swaynag, types, type, | 420 | result = swaynag_parse_options(2, argv, swaynag, types, type, |
421 | NULL, NULL); | 421 | NULL, NULL); |
diff --git a/swaynag/swaynag.c b/swaynag/swaynag.c index 03ec0411..23d23f38 100644 --- a/swaynag/swaynag.c +++ b/swaynag/swaynag.c | |||
@@ -28,8 +28,9 @@ static bool terminal_execute(char *terminal, char *command) { | |||
28 | fprintf(tmp, "#!/bin/sh\nrm %s\n%s", fname, command); | 28 | fprintf(tmp, "#!/bin/sh\nrm %s\n%s", fname, command); |
29 | fclose(tmp); | 29 | fclose(tmp); |
30 | chmod(fname, S_IRUSR | S_IWUSR | S_IXUSR); | 30 | chmod(fname, S_IRUSR | S_IWUSR | S_IXUSR); |
31 | char *cmd = malloc(sizeof(char) * (strlen(terminal) + strlen(" -e ") + strlen(fname) + 1)); | 31 | size_t cmd_size = strlen(terminal) + strlen(" -e ") + strlen(fname) + 1; |
32 | sprintf(cmd, "%s -e %s", terminal, fname); | 32 | char *cmd = malloc(cmd_size); |
33 | snprintf(cmd, cmd_size, "%s -e %s", terminal, fname); | ||
33 | execlp("sh", "sh", "-c", cmd, NULL); | 34 | execlp("sh", "sh", "-c", cmd, NULL); |
34 | sway_log_errno(SWAY_ERROR, "Failed to run command, execlp() returned."); | 35 | sway_log_errno(SWAY_ERROR, "Failed to run command, execlp() returned."); |
35 | free(cmd); | 36 | free(cmd); |