X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=libiberty%2Ffnmatch.c;h=fc897be2c6f7d7b289d2815485034f6ab8379284;hb=8b8c7c9f49992750f66f81b4601d593a3858d98c;hp=0a9bfe6152bd0180cc073bb46fb9eb5a5e124b61;hpb=30727aa6d12fb866494020c0b62ab265a2bdcdfe;p=deliverable%2Fbinutils-gdb.git diff --git a/libiberty/fnmatch.c b/libiberty/fnmatch.c index 0a9bfe6152..fc897be2c6 100644 --- a/libiberty/fnmatch.c +++ b/libiberty/fnmatch.c @@ -1,7 +1,7 @@ /* Copyright (C) 1991, 1992, 1993 Free Software Foundation, Inc. -NOTE: The canonical source of this file is maintained with the GNU C Library. -Bugs can be reported to bug-glibc@prep.ai.mit.edu. +NOTE: This source is derived from an old version taken from the GNU C +Library (glibc). This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the @@ -15,8 +15,8 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, 59 Temple Place - Suite 330, -Boston, MA 02111-1307, USA. */ +Foundation, 51 Franklin Street - Fifth Floor, +Boston, MA 02110-1301, USA. */ #ifdef HAVE_CONFIG_H #if defined (CONFIG_BROKETS) @@ -45,8 +45,7 @@ Boston, MA 02111-1307, USA. */ #include #include -#include - +#include /* Comment out all this code if we are using the GNU C Library, and are not actually compiling the library itself. This code is part of the GNU C @@ -66,16 +65,12 @@ extern int errno; /* Match STRING against the filename pattern PATTERN, returning zero if it matches, nonzero if not. */ int -fnmatch (pattern, string, flags) - const char *pattern; - const char *string; - int flags; +fnmatch (const char *pattern, const char *string, int flags) { register const char *p = pattern, *n = string; register unsigned char c; -/* Note that this evalutes C many times. */ -#define FOLD(c) ((flags & FNM_CASEFOLD) && isupper (c) ? tolower (c) : (c)) +#define FOLD(c) ((flags & FNM_CASEFOLD) ? TOLOWER (c) : (c)) while ((c = *p++) != '\0') { @@ -129,7 +124,7 @@ fnmatch (pattern, string, flags) case '[': { /* Nonzero if the sense of the character class is inverted. */ - register int not; + register int negate; if (*n == '\0') return FNM_NOMATCH; @@ -138,8 +133,8 @@ fnmatch (pattern, string, flags) (n == string || ((flags & FNM_FILE_NAME) && n[-1] == '/'))) return FNM_NOMATCH; - not = (*p == '!' || *p == '^'); - if (not) + negate = (*p == '!' || *p == '^'); + if (negate) ++p; c = *p++; @@ -182,7 +177,7 @@ fnmatch (pattern, string, flags) if (c == ']') break; } - if (!not) + if (!negate) return FNM_NOMATCH; break; @@ -199,7 +194,7 @@ fnmatch (pattern, string, flags) /* XXX 1003.2d11 is unclear if this is right. */ ++p; } - if (not) + if (negate) return FNM_NOMATCH; } break;