fnmatch(3): improve POSIX conformance.
In a recent interpretation[1], "\\" shall return a non-zero value (indicating either no match or an error). The fix involves a change over r254091 and now the behavior matches the Sun/IBM/HP closed source implementations and also likely musl libc. Submitted by: Joerg Schilling <joerg at schily.net> MFC after: 1 week [1] http://austingroupbugs.net/view.php?id=806
This commit is contained in:
parent
f8054adeb1
commit
303cbb93c5
@ -184,7 +184,8 @@ fnmatch1(const char *pattern, const char *string, const char *stringstart,
|
||||
if (!(flags & FNM_NOESCAPE)) {
|
||||
pclen = mbrtowc(&pc, pattern, MB_LEN_MAX,
|
||||
&patmbs);
|
||||
if (pclen == (size_t)-1 || pclen == (size_t)-2)
|
||||
if (pclen == 0 || pclen == (size_t)-1 ||
|
||||
pclen == (size_t)-2)
|
||||
return (FNM_NOMATCH);
|
||||
pattern += pclen;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user