diff options
author | Omar Polo <op@omarpolo.com> | 2023-08-11 10:40:58 +0000 |
---|---|---|
committer | Omar Polo <op@omarpolo.com> | 2023-08-11 10:40:58 +0000 |
commit | 07ad49102564bf72092cc8080322852308490065 (patch) | |
tree | de6669ffc74ac7c58f18ad59fc8faf336d5a64ef /utils.c | |
parent | 95500a936a1b0e42d304315fd2f7ae20ca391042 (diff) |
getcwd(NULL) is an extension; don't rely on it
also, while here, add some error checking too
Diffstat (limited to 'utils.c')
-rw-r--r-- | utils.c | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -67,7 +67,7 @@ ends_with(const char *str, const char *sufx) char * absolutify_path(const char *path) { - char *wd, *r; + char wd[PATH_MAX], *r; if (*path == '/') { if ((r = strdup(path)) == NULL) @@ -75,10 +75,10 @@ absolutify_path(const char *path) return r; } - wd = getcwd(NULL, 0); + if (getcwd(wd, sizeof(wd)) == NULL) + fatal("getcwd"); if (asprintf(&r, "%s/%s", wd, path) == -1) fatal("asprintf"); - free(wd); return r; } |