Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/blenlib/intern/fnmatch.c')
-rw-r--r--source/blender/blenlib/intern/fnmatch.c146
1 files changed, 73 insertions, 73 deletions
diff --git a/source/blender/blenlib/intern/fnmatch.c b/source/blender/blenlib/intern/fnmatch.c
index ccb6fa72ea8..a78f9ad7585 100644
--- a/source/blender/blenlib/intern/fnmatch.c
+++ b/source/blender/blenlib/intern/fnmatch.c
@@ -66,97 +66,97 @@ fnmatch (const char *pattern, const char *string, int flags)
# define FOLD(c) ((flags & FNM_CASEFOLD) && ISUPPER (c) ? tolower (c) : (c))
while ((c = *p++) != '\0')
- {
- c = FOLD (c);
+ {
+ c = FOLD (c);
- switch (c)
+ switch (c)
{
case '?':
if (*n == '\0')
- return FNM_NOMATCH;
+ return FNM_NOMATCH;
else if ((flags & FNM_FILE_NAME) && *n == '/')
- return FNM_NOMATCH;
+ return FNM_NOMATCH;
else if ((flags & FNM_PERIOD) && *n == '.' &&
(n == string || ((flags & FNM_FILE_NAME) && n[-1] == '/')))
- return FNM_NOMATCH;
+ return FNM_NOMATCH;
break;
case '\\':
if (!(flags & FNM_NOESCAPE))
- {
- c = *p++;
- if (c == '\0')
+ {
+ c = *p++;
+ if (c == '\0')
/* Trailing \ loses. */
return FNM_NOMATCH;
- c = FOLD (c);
- }
+ c = FOLD (c);
+ }
if (FOLD (*n) != c)
- return FNM_NOMATCH;
+ return FNM_NOMATCH;
break;
case '*':
if ((flags & FNM_PERIOD) && *n == '.' &&
- (n == string || ((flags & FNM_FILE_NAME) && n[-1] == '/')))
- return FNM_NOMATCH;
+ (n == string || ((flags & FNM_FILE_NAME) && n[-1] == '/')))
+ return FNM_NOMATCH;
for (c = *p++; c == '?' || c == '*'; c = *p++)
- {
- if ((flags & FNM_FILE_NAME) && *n == '/')
+ {
+ if ((flags & FNM_FILE_NAME) && *n == '/')
/* A slash does not match a wildcard under FNM_FILE_NAME. */
return FNM_NOMATCH;
- else if (c == '?')
+ else if (c == '?')
{
/* A ? needs to match one character. */
if (*n == '\0')
- /* There isn't another character; no match. */
- return FNM_NOMATCH;
+ /* There isn't another character; no match. */
+ return FNM_NOMATCH;
else
- /* One character of the string is consumed in matching
- this ? wildcard, so *??? won't match if there are
- less than three characters. */
- ++n;
+ /* One character of the string is consumed in matching
+ this ? wildcard, so *??? won't match if there are
+ less than three characters. */
+ ++n;
+ }
}
- }
if (c == '\0')
- return 0;
+ return 0;
{
- char c1 = (!(flags & FNM_NOESCAPE) && c == '\\') ? *p : c;
- c1 = FOLD (c1);
- for (--p; *n != '\0'; ++n)
- if ((c == '[' || FOLD (*n) == c1) &&
+ char c1 = (!(flags & FNM_NOESCAPE) && c == '\\') ? *p : c;
+ c1 = FOLD (c1);
+ for (--p; *n != '\0'; ++n)
+ if ((c == '[' || FOLD (*n) == c1) &&
fnmatch (p, n, flags & ~FNM_PERIOD) == 0)
return 0;
- return FNM_NOMATCH;
+ return FNM_NOMATCH;
}
case '[':
{
- /* Nonzero if the sense of the character class is inverted. */
- register int not;
+ /* Nonzero if the sense of the character class is inverted. */
+ register int not;
- if (*n == '\0')
- return FNM_NOMATCH;
+ if (*n == '\0')
+ return FNM_NOMATCH;
- if ((flags & FNM_PERIOD) && *n == '.' &&
+ if ((flags & FNM_PERIOD) && *n == '.' &&
(n == string || ((flags & FNM_FILE_NAME) && n[-1] == '/')))
- return FNM_NOMATCH;
+ return FNM_NOMATCH;
- not = (*p == '!' || *p == '^');
- if (not)
- ++p;
+ not = (*p == '!' || *p == '^');
+ if (not)
+ ++p;
- c = *p++;
- for (;;)
- {
+ c = *p++;
+ for (;;)
+ {
register char cstart = c, cend = c;
if (!(flags & FNM_NOESCAPE) && c == '\\')
{
- if (*p == '\0')
- return FNM_NOMATCH;
- cstart = cend = *p++;
+ if (*p == '\0')
+ return FNM_NOMATCH;
+ cstart = cend = *p++;
}
cstart = cend = FOLD (cstart);
@@ -174,14 +174,14 @@ fnmatch (const char *pattern, const char *string, int flags)
if (c == '-' && *p != ']')
{
- cend = *p++;
- if (!(flags & FNM_NOESCAPE) && cend == '\\')
- cend = *p++;
- if (cend == '\0')
- return FNM_NOMATCH;
- cend = FOLD (cend);
-
- c = *p++;
+ cend = *p++;
+ if (!(flags & FNM_NOESCAPE) && cend == '\\')
+ cend = *p++;
+ if (cend == '\0')
+ return FNM_NOMATCH;
+ cend = FOLD (cend);
+
+ c = *p++;
}
if (FOLD (*n) >= cstart && FOLD (*n) <= cend)
@@ -189,15 +189,15 @@ fnmatch (const char *pattern, const char *string, int flags)
if (c == ']')
break;
- }
- if (!not)
- return FNM_NOMATCH;
- break;
+ }
+ if (!not)
+ return FNM_NOMATCH;
+ break;
matched:;
- /* Skip the rest of the [...] that already matched. */
- while (c != ']')
- {
+ /* Skip the rest of the [...] that already matched. */
+ while (c != ']')
+ {
if (c == '\0')
/* [... (unterminated) loses. */
return FNM_NOMATCH;
@@ -205,31 +205,31 @@ fnmatch (const char *pattern, const char *string, int flags)
c = *p++;
if (!(flags & FNM_NOESCAPE) && c == '\\')
{
- if (*p == '\0')
- return FNM_NOMATCH;
- /* XXX 1003.2d11 is unclear if this is right. */
- ++p;
+ if (*p == '\0')
+ return FNM_NOMATCH;
+ /* XXX 1003.2d11 is unclear if this is right. */
+ ++p;
+ }
}
- }
- if (not)
- return FNM_NOMATCH;
+ if (not)
+ return FNM_NOMATCH;
}
break;
default:
if (c != FOLD (*n))
- return FNM_NOMATCH;
+ return FNM_NOMATCH;
}
- ++n;
- }
+ ++n;
+ }
if (*n == '\0')
- return 0;
+ return 0;
if ((flags & FNM_LEADING_DIR) && *n == '/')
- /* The FNM_LEADING_DIR flag says that "foo*" matches "foobar/frobozz". */
- return 0;
+ /* The FNM_LEADING_DIR flag says that "foo*" matches "foobar/frobozz". */
+ return 0;
return FNM_NOMATCH;