|
Message-ID: <CABg4E-=fgir2Qmy6o5zvXKOMsKkTSNBKQSQeH+dBPCucc5X-vQ@mail.gmail.com> Date: Fri, 25 Feb 2022 10:44:52 -0500 From: Tavian Barnes <tavianator@...ianator.com> To: musl@...ts.openwall.com Subject: fnmatch trailing backslash I noticed that fnmatch() behaviour with a trailing unescaped backslash differs between glibc and musl: $ cat foo.c #include <assert.h> #include <fnmatch.h> int main(void) { assert(fnmatch("\\", "\\", 0) != 0); return 0; } $ gcc foo.c -o foo && ./foo $ musl-gcc foo.c -o foo && ./foo Assertion failed: fnmatch("\\", "\\", 0) != 0 (foo.c: main: 5) In https://pubs.opengroup.org/onlinepubs/9699919799/functions/fnmatch.html, POSIX says: > If pattern ends with an unescaped <backslash>, fnmatch() shall return a non-zero value (indicating either no match or an error). And interestingly, it was a defect report from Rich that led to that wording: https://www.austingroupbugs.net/view.php?id=806 -- Tavian Barnes
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.