From 3121eeb5e68bedd6e2398f35b9bd60b69709a47e Mon Sep 17 00:00:00 2001 From: Josselin Poiret Date: Tue, 14 Dec 2021 18:49:54 +0100 Subject: [PATCH] Replace hardcoded command length --- src/screenshot/screenshot.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/screenshot/screenshot.c b/src/screenshot/screenshot.c index 9df0ea7..5f27681 100644 --- a/src/screenshot/screenshot.c +++ b/src/screenshot/screenshot.c @@ -42,8 +42,9 @@ static bool exec_screenshooter_interactive(const char *path) { perror("fork"); return false; } else if (pid == 0) { - char cmd[strlen(path) + 25]; - snprintf(cmd, sizeof(cmd), "grim -g \"$(slurp)\" -- %s", path); + const char cmd_fmt[] = "grim -g \"$(slurp)\" -- %s"; + char cmd[strlen(path) + sizeof(cmd_fmt)]; + snprintf(cmd, sizeof(cmd), cmd_fmt, path); execl("/bin/sh", "/bin/sh", "-c", cmd, NULL); perror("execl"); exit(127); -- 2.34.0 tr>
aboutsummaryrefslogtreecommitdiff
path: root/tests/services.scm
AgeCommit message (Expand)Author
2023-06-06services: 'modify-services' preserves service ordering....Fixes <https://issues.guix.gnu.org/63921>. The regression was introduced in dbbc7e946131ba257728f1d05b96c4339b7ee88b, which changed the order of services. As a result, someone using 'modify-services' could find themselves with incorrect ordering of expressions in the "boot" script, whereby the cleanup expressions would come after (execl ".../shepherd"). This, in turn, would lead shepherd to error out at boot with EADDRINUSE on /var/run/shepherd/socket. * gnu/services.scm (%delete-service, %apply-clauses): Remove. (clause-alist): New macro. (apply-clauses): New procedure. (modify-services): Use it. Adjust docstring. * tests/services.scm ("modify-services: do nothing"): Remove 'sort' call. ("modify-services: delete service"): Likewise, and add 't4' service. ("modify-services: change value"): Remove 'sort' call and fix expected value. Ludovic Courtès