summaryrefslogtreecommitdiffstats
path: root/newlib/libc/stdlib/sb_charsets.c
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2016-10-19 13:26:03 +0200
committerCorinna Vinschen <corinna@vinschen.de>2016-10-19 13:26:03 +0200
commite3ccb686104103898ac9615a72f0189aa980c273 (patch)
treebe3ec36e72149e8fd2c419c20042a211353c86d9 /newlib/libc/stdlib/sb_charsets.c
parente1824aea27536dc0357687c1d9022bee0d1ef501 (diff)
downloadcygnal-e3ccb686104103898ac9615a72f0189aa980c273.tar.gz
cygnal-e3ccb686104103898ac9615a72f0189aa980c273.tar.bz2
cygnal-e3ccb686104103898ac9615a72f0189aa980c273.zip
Don't check directories always case-insensitive in rename(2)
Long-standing problem in one of the corner cases of rename(2): If we rename a directory a check is performed to see if newpath is identical to oldpath or a subdir of oldpath. This check is (accidentally? no hints anywhere in ChangeLogs or code) performed case-insensitive for as long as we use Unicode paths and NT functions. This leads to the problems described in https://cygwin.com/ml/cygwin/2016-09/msg00264.html Change this to be conditional case-sensitive as all other checks but let's take this with a grain of salt. There may be corner-cases in this corner-case which require to chek parts of the path always case-insensitive. Off the top of my head I can't construct such a case but that's no proof they don't exist :} Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Diffstat (limited to 'newlib/libc/stdlib/sb_charsets.c')
0 files changed, 0 insertions, 0 deletions