summaryrefslogtreecommitdiff
path: root/posix/glob_internal.h
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2017-09-05 11:02:24 -0300
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2017-09-08 16:34:04 +0200
commit07b4f49db285f39594859c58893e3404b33200dd (patch)
tree7c013b255ca113a69fba1ddf5281ca8f3e39ab0b /posix/glob_internal.h
parent116f1c64d8d84ecbf269ac70a35657aa057f26c3 (diff)
posix: Use enum for __glob_pattern_type result
This patch replaces the internal integer constant from __glob_pattern_type return with a proper enum. Checked on x86_64-linux-gnu and on a build using build-many-glibcs.py for all major architectures. * posix/glob_internal.h (glob_pattern_type_t): New enumeration. (__glob_pattern_type): Use __glob_pat_types. * posix/glob_pattern_p.c (__glob_pattern_p): Likewise. * posix/glob.c (glob): Likewise. (glob_in_dir): Likewise.
Diffstat (limited to 'posix/glob_internal.h')
-rw-r--r--posix/glob_internal.h18
1 files changed, 13 insertions, 5 deletions
diff --git a/posix/glob_internal.h b/posix/glob_internal.h
index 12c93660b7..d118b3533d 100644
--- a/posix/glob_internal.h
+++ b/posix/glob_internal.h
@@ -19,35 +19,43 @@
#ifndef GLOB_INTERNAL_H
# define GLOB_INTERNAL_H
+enum
+{
+ GLOBPAT_NONE = 0x0,
+ GLOBPAT_SPECIAL = 0x1,
+ GLOBPAT_BACKSLASH = 0x2,
+ GLOBPAT_BRACKET = 0x4
+};
+
static inline int
__glob_pattern_type (const char *pattern, int quote)
{
const char *p;
- int ret = 0;
+ int ret = GLOBPAT_NONE;
for (p = pattern; *p != '\0'; ++p)
switch (*p)
{
case '?':
case '*':
- return 1;
+ return GLOBPAT_SPECIAL;
case '\\':
if (quote)
{
if (p[1] != '\0')
++p;
- ret |= 2;
+ ret |= GLOBPAT_BACKSLASH;
}
break;
case '[':
- ret |= 4;
+ ret |= GLOBPAT_BRACKET;
break;
case ']':
if (ret & 4)
- return 1;
+ return GLOBPAT_SPECIAL;
break;
}