diff options
author | Alan Coopersmith <alan.coopersmith@oracle.com> | 2022-12-07 11:17:32 -0800 |
---|---|---|
committer | Alan Coopersmith <alan.coopersmith@oracle.com> | 2023-01-01 14:50:25 -0800 |
commit | c46d912071dd8fad6c1ed532cbef26db34a639e9 (patch) | |
tree | 246413a71502c3a638d22099228d27242b4afadb | |
parent | 72a6cb64b0aded790e44d97e71434a4eddb91f15 (diff) |
Call strrchr() instead of hand coding a custom version
Also correct comments on hand-coded custom strcmp() replacements
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
-rw-r--r-- | include.c | 7 | ||||
-rw-r--r-- | main.c | 4 | ||||
-rw-r--r-- | parse.c | 4 |
3 files changed, 6 insertions, 9 deletions
@@ -273,12 +273,9 @@ find_full_inc_path(const char *file, const char *include, int type) * in the directory of the file being parsed. */ if ((type == INCLUDEDOT) || (type == INCLUDENEXTDOT)) { - const char *p; + const char *p = strrchr(file, '/'); - for (p = file + strlen(file); p > file; p--) - if (*p == '/') - break; - if (p == file) { + if ((p == NULL) || (p == file)) { strcpy(path, include); } else { @@ -728,9 +728,9 @@ base_name(const char *in_file) if (file == NULL) fatalerr("strdup() failure in %s()\n", __func__); - for (p = file + strlen(file); p > file && *p != '.'; p--); + p = strrchr(file, '.'); - if (*p == '.') + if (p != NULL) *p = '\0'; return (file); } @@ -336,7 +336,7 @@ define2(const char *name, const char *val, struct inclist *file) const char *s2; int middle = (first + last) / 2; - /* Fast inline strchr() */ + /* Fast inline strcmp() */ s1 = name; s2 = file->i_defs[middle]->s_name; while (*s1++ == *s2++) @@ -427,7 +427,7 @@ slookup(const char *symbol, struct inclist *file) const char *s2; int middle = (first + last) / 2; - /* Fast inline strchr() */ + /* Fast inline strcmp() */ s1 = symbol; s2 = file->i_defs[middle]->s_name; while (*s1++ == *s2++) |