trailing spaces in 1.7.0

Eric Blake
Sat May 10 15:14:00 GMT 2008

This regression is interfering with the testsuite of a git checkout of 
autoconf, which tries to sanitize special pathnames by first testing if 
trailing spaces in directory names are supported (since in 1.5.25, the 
trailing space is stripped when the directory occurs in isolation, but not 
when used like 'dir /file'; worse, this happened even in managed mounts). 
  The problem is probably caused by the fact that 1.7.0 tries to use 
special path names to work around windows limitations:

$ mkdir 'dir '
$ rm -Rf 'dir '; echo $?
$ ls -dQ d*
"dir "
$ rm -R 'dir '; echo $?
$ ls -dQ d*
ls: cannot access "d*": No such file or directory

Something in the -f codepath caused rm to exit with failure, but without 
any error message (if nothing else, coreutils should never exit non-zero 
without a message).  I'm still trying to get a debugging build of 
coreutils built under 1.7.0 to further investigate which syscall is 
causing rm to exit, but Corinna is more familiar with the underlying path 
name manipulation that allows the creation of a trailing space in the 
first place.

Don't work too hard, make some time for fun as well!

Eric Blake   

More information about the Cygwin-developers mailing list