Files
nixpkgs/pkgs/by-name/io/iotools/001-fix-werror-in-sprintf.patch
Dark Steveneq 646b892680
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
push sheeet
2025-10-09 14:15:47 +02:00

28 lines
701 B
Diff

diff --git a/commands.c b/commands.c
index a28e6da..0f76ac7 100644
--- a/commands.c
+++ b/commands.c
@@ -20,6 +20,7 @@
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
+#include <limits.h>
#include <errno.h>
#include "commands.h"
#include "platform.h"
@@ -150,7 +151,13 @@ build_symlink_name(const char *path_to_bin, const struct cmd_info *cmd)
{
static char link_name[FILENAME_MAX];
- snprintf(link_name, FILENAME_MAX, "%s/%s", path_to_bin, cmd->name);
+ int result = snprintf(link_name, PATH_MAX, "%s/%s", path_to_bin, cmd->name);
+
+ if (result >= PATH_MAX) {
+ link_name[PATH_MAX - 1] = '\0';
+ } else if (result < 0) {
+ link_name[0] = '\0';
+ }
return link_name;
}