X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/81a21a9a97d8633f6d6231e31fdb6e328d0d3ff2..a7c1ec95e26ca515d95bfda1e260e3827ba25a1e:/sbr/brkstring.c?ds=inline diff --git a/sbr/brkstring.c b/sbr/brkstring.c index 255abf74..0f7c17fc 100644 --- a/sbr/brkstring.c +++ b/sbr/brkstring.c @@ -1,10 +1,6 @@ - -/* - * brkstring.c -- (destructively) split a string into +/* brkstring.c -- (destructively) split a string into * -- an array of substrings * - * $Id$ - * * This code is Copyright (c) 2002, by the authors of nmh. See the * COPYRIGHT file in the root directory of the nmh distribution for * complete copyright information. @@ -34,7 +30,7 @@ brkstring (char *str, char *brksep, char *brkterm) /* allocate initial space for pointers on first call */ if (!broken) { len = NUMBROKEN; - broken = (char **) mh_xmalloc ((size_t) (len * sizeof(*broken))); + broken = mh_xmalloc ((size_t) (len * sizeof(*broken))); } /* @@ -48,8 +44,7 @@ brkstring (char *str, char *brksep, char *brkterm) /* enlarge pointer array, if necessary */ if (i >= len) { len += NUMBROKEN; - if (!(broken = realloc (broken, (size_t) (len * sizeof(*broken))))) - adios (NULL, "unable to realloc array in brkstring"); + broken = mh_xrealloc (broken, (size_t) (len * sizeof(*broken))); } while (brkany (c = *s, brksep)) @@ -62,7 +57,7 @@ brkstring (char *str, char *brksep, char *brkterm) if (!c || brkany (c, brkterm)) { *s = '\0'; broken[i] = NULL; - return broken; + break; } /* set next start addr */ @@ -72,7 +67,7 @@ brkstring (char *str, char *brksep, char *brkterm) ; /* empty body */ } - return broken; /* NOT REACHED */ + return broken; } @@ -84,12 +79,5 @@ brkstring (char *str, char *brksep, char *brkterm) static int brkany (char c, char *str) { - char *s; - - if (str) { - for (s = str; *s; s++) - if (c == *s) - return 1; - } - return 0; + return str && c && strchr(str, c); }