Lines Matching refs:string
123 static int fnmatchx(const char *pattern, const char *string, int flags, size_t recursion) in fnmatchx() argument
128 if (pattern == NULL || string == NULL) { in fnmatchx()
136 for (stringstart = string;;) { in fnmatchx()
140 if ((flags & FNM_LEADING_DIR) && *string == '/') { in fnmatchx()
144 return *string == EOS ? 0 : FNM_NOMATCH; in fnmatchx()
146 if (*string == EOS) { in fnmatchx()
150 if (*string == '/' && (flags & FNM_PATHNAME)) { in fnmatchx()
154 if (*string == '.' && (flags & FNM_PERIOD) && in fnmatchx()
155 (string == stringstart || in fnmatchx()
156 ((flags & FNM_PATHNAME) && *(string - 1) == '/'))) { in fnmatchx()
160 ++string; in fnmatchx()
169 if (*string == '.' && (flags & FNM_PERIOD) && in fnmatchx()
170 (string == stringstart || in fnmatchx()
171 ((flags & FNM_PATHNAME) && *(string - 1) == '/'))) { in fnmatchx()
179 strchr(string, '/') == NULL in fnmatchx()
186 string = strchr(string, '/'); in fnmatchx()
187 if (string == NULL) { in fnmatchx()
196 test = FOLDCASE(*string, flags); in fnmatchx()
201 int e = fnmatchx(pattern, string, flags & ~FNM_PERIOD, recursion); in fnmatchx()
211 ++string; in fnmatchx()
216 if (*string == EOS) { in fnmatchx()
220 if (*string == '/' && flags & FNM_PATHNAME) { in fnmatchx()
224 r = rangematch(pattern, FOLDCASE(*string, flags), flags); in fnmatchx()
230 if (*string != '[') { in fnmatchx()
237 ++string; in fnmatchx()
249 if (c != FOLDCASE(*string++, flags)) { in fnmatchx()
258 int fnmatch(const char *pattern, const char *string, int flags) in fnmatch() argument
260 return fnmatchx(pattern, string, flags, 64); in fnmatch()