X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/b02e66544edc7947731a7758ab4da8e6d81779c3..b3d4a4452c332fc3550db3fbdf9e02027b41e985:/sbr/makedir.c diff --git a/sbr/makedir.c b/sbr/makedir.c index ad481099..10c46b1f 100644 --- a/sbr/makedir.c +++ b/sbr/makedir.c @@ -9,7 +9,8 @@ * Modified to try recursive create. */ -#include +#include "h/mh.h" +#include "error.h" #include "makedir.h" #include @@ -18,7 +19,6 @@ makedir (const char *dir) { char path[PATH_MAX]; char* folder_perms_ASCII; - int had_an_error = 0; mode_t folder_perms, saved_umask; char* c; @@ -43,17 +43,18 @@ makedir (const char *dir) c = strncpy(path, dir, sizeof(path)); + bool had_an_error = false; while (!had_an_error && (c = strchr((c + 1), '/')) != NULL) { - *c = (char)0; + *c = '\0'; if (access(path, X_OK)) { if (errno != ENOENT){ advise (dir, "unable to create directory"); - had_an_error = 1; + had_an_error = true; } /* Create an outer directory. */ if (mkdir(path, folder_perms)) { advise (dir, "unable to create directory"); - had_an_error = 1; + had_an_error = true; } } *c = '/'; @@ -64,7 +65,7 @@ makedir (const char *dir) asked to create. */ if (mkdir (dir, folder_perms) == -1) { advise (dir, "unable to create directory"); - had_an_error = 1; + had_an_error = true; } }