diff options
| author | Juli Mallett <jmallett@FreeBSD.org> | 2002-06-20 19:41:21 +0000 |
|---|---|---|
| committer | Juli Mallett <jmallett@FreeBSD.org> | 2002-06-20 19:41:21 +0000 |
| commit | 2431da5c7e95582f9b4ddf9fcfbc23641ad92829 (patch) | |
| tree | 8835447994f21a35f8884e5851b680e09d838bf0 /usr.bin/make/dir.c | |
| parent | a63d92ee8970fb25322903e7d7c7da02b44d6d19 (diff) | |
Notes
Diffstat (limited to 'usr.bin/make/dir.c')
| -rw-r--r-- | usr.bin/make/dir.c | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/usr.bin/make/dir.c b/usr.bin/make/dir.c index 1431687d5a9b6..38754e1f4b005 100644 --- a/usr.bin/make/dir.c +++ b/usr.bin/make/dir.c @@ -296,17 +296,33 @@ Dir_HasWildcards (name) char *name; /* name to check */ { char *cp; + int wild = 0, brace = 0, bracket = 0; for (cp = name; *cp; cp++) { switch(*cp) { case '{': + brace++; + wild = 1; + break; + case '}': + brace--; + break; case '[': + bracket++; + wild = 1; + break; + case ']': + bracket--; + break; case '?': case '*': - return (TRUE); + wild = 1; + break; + default: + break; } } - return (FALSE); + return wild && bracket == 0 && brace == 0; } /*- |
