-
-/*
- * 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.
/* 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))
if (!c || brkany (c, brkterm)) {
*s = '\0';
broken[i] = NULL;
- return broken;
+ break;
}
/* set next start addr */
; /* empty body */
}
- return broken; /* NOT REACHED */
+ return broken;
}
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);
}