summaryrefslogtreecommitdiff
path: root/src/network/recvmsg.c
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2018-10-13 00:55:48 -0400
committerRich Felker <dalias@aerifal.cx>2018-10-13 01:28:07 -0400
commit481006fd8887b80c4f794085179047e28102b01a (patch)
tree88d0d14996530069c6c4116cb73a9d40b0465ac0 /src/network/recvmsg.c
parentd44b07fc904f6a0d31ba025f3e9f423c1e47547e (diff)
downloadmusl-481006fd8887b80c4f794085179047e28102b01a.tar.gz
allow escaped path-separator slashes in glob
previously (before and after rewrite), spurious escaping of path separators as \/ was not treated the same as /, but rather got split as an unpaired \ at the end of the fnmatch pattern and an unescaped /, resulting in a mismatch/error. for the case of \/ as part of the maximal literal prefix, remove the explicit rejection of it and move the handling of / below escape processing. for the case of \/ after a proper glob pattern, it's hard to parse the pattern, so don't. instead cheat and count repetitions of \ prior to the already-found / character. if there are an odd number, the last is escaping the /, so back up the split position by one. now the char clobbered by null termination is variable, so save it and restore as needed.
Diffstat (limited to 'src/network/recvmsg.c')
0 files changed, 0 insertions, 0 deletions