X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=sbr%2Futils.c;h=5c5b0f5149a01dfd19cf1044e9b799acbb0b26b9;hp=f450c58bca52df1ff4310d98b17a5ccd908207db;hb=39e87a75b5c2d3572ec72e717720b44af291e88a;hpb=ced6090a330d3d83d0bce709f756aa3d7d65fea4 diff --git a/sbr/utils.c b/sbr/utils.c index f450c58..5c5b0f5 100644 --- a/sbr/utils.c +++ b/sbr/utils.c @@ -45,11 +45,12 @@ mh_xrealloc(void *ptr, size_t size) void *memory; /* Some non-POSIX realloc()s don't cope with realloc(NULL,sz) */ - if (!ptr) + if (!ptr) { return mh_xmalloc(size); + } if (size == 0) - adios(NULL, "Tried to realloc 0bytes"); + adios(NULL, "Tried to realloc 0 bytes"); memory = realloc(ptr, size); if (!memory) @@ -68,18 +69,20 @@ pwd(void) register char *cp; static char curwd[PATH_MAX]; - if (!getcwd (curwd, PATH_MAX)) { - admonish (NULL, "unable to determine working directory"); - if (!mypath || !*mypath - || (strcpy (curwd, mypath), chdir (curwd)) == -1) { - strcpy (curwd, "/"); - chdir (curwd); + if (!getcwd(curwd, PATH_MAX)) { + admonish(NULL, "unable to determine working directory"); + if (!mypath || !*mypath || + (strcpy(curwd, mypath), chdir(curwd)) == -1) { + strcpy(curwd, "/"); + chdir(curwd); } return curwd; } - if ((cp = curwd + strlen (curwd) - 1) > curwd && *cp == '/') + if ((cp = curwd + strlen(curwd) - 1) > curwd && *cp == '/') { + /* strip trailing slash */ *cp = '\0'; + } return curwd; } @@ -87,33 +90,34 @@ pwd(void) /* ** add -- If "s1" is NULL, this routine just creates a ** -- copy of "s2" into newly malloc'ed memory. +** -- (use getcpy() instead in this case) ** -- ** -- If "s1" is not NULL, then copy the concatenation ** -- of "s1" and "s2" (note the order) into newly ** -- malloc'ed memory. Then free "s1". */ char * -add (char *s2, char *s1) +add(char *s2, char *s1) { char *cp; size_t len1 = 0, len2 = 0; if (s1) - len1 = strlen (s1); + len1 = strlen(s1); if (s2) - len2 = strlen (s2); + len2 = strlen(s2); - cp = mh_xmalloc (len1 + len2 + 1); + cp = mh_xmalloc(len1 + len2 + 1); /* Copy s1 and free it */ if (s1) { - memcpy (cp, s1, len1); - free (s1); + memcpy(cp, s1, len1); + free(s1); } /* Copy s2 */ if (s2) - memcpy (cp + len1, s2, len2); + memcpy(cp + len1, s2, len2); /* Now NULL terminate the string */ cp[len1 + len2] = '\0'; @@ -131,7 +135,7 @@ folder_exists(char *folder) struct stat st; int exists = 0; - if (stat (folder, &st) == -1) { + if (stat(folder, &st) == -1) { /* ** The folder either doesn't exist, or we hit an error. ** Either way return a failure. @@ -157,21 +161,21 @@ create_folder(char *folder, int autocreate, void (*done_callback)(int)) extern int errno; char *cp; - if (stat (folder, &st) == -1) { + if (stat(folder, &st) == -1) { if (errno != ENOENT) - adios (folder, "error on folder"); + adios(folder, "error on folder"); if (autocreate == 0) { /* ask before creating folder */ - cp = concat ("Create folder \"", folder, "\"? ", NULL); - if (!getanswer (cp)) - done_callback (1); - free (cp); + cp = concat("Create folder \"", folder, "\"? ", NULL); + if (!getanswer(cp)) + done_callback(1); + free(cp); } else if (autocreate == -1) { /* do not create, so exit */ - done_callback (1); + done_callback(1); } - if (!makedir (folder)) - adios (NULL, "unable to create folder %s", folder); + if (!makedir(folder)) + adios(NULL, "unable to create folder %s", folder); } } @@ -180,13 +184,13 @@ create_folder(char *folder, int autocreate, void (*done_callback)(int)) ** Return the number of digits in a nonnegative integer. */ int -num_digits (int n) +num_digits(int n) { int ndigits = 0; /* Sanity check */ if (n < 0) - adios (NULL, "oops, num_digits called with negative value"); + adios(NULL, "oops, num_digits called with negative value"); if (n == 0) return 1; @@ -212,19 +216,3 @@ app_msgarg(struct msgs_array *msgs, char *cp) (msgs->max+=MAXMSGS)*sizeof(*msgs->msgs)); msgs->msgs[msgs->size++] = cp; } - -/* Open a form or components file */ -int -open_form(char **form, char *def) -{ - int in; - if (*form) { - if ((in = open (etcpath (*form), O_RDONLY)) == NOTOK) - adios (*form, "unable to open form file"); - } else { - if ((in = open (etcpath (def), O_RDONLY)) == NOTOK) - adios (def, "unable to open default components file"); - *form = def; - } - return in; -}