This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

another manifestation of the .. bug


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

The fact that cygwin incorrectly flattens /name/../ to / in pathname
resolution without first resolving name is triggering a failure in a new
test recently added to the coreutils testsuite.

mkdir -p dir/.. && test -d dir

should always succeed when dir did not exist beforehand, but because
cygwin is flattening stat("dir/..") into stat(".") rather than failing
with the required ENOENT when dir does not yet exist, mkdir does not go on
to create dir.  I can work around this issue in coreutils by making mkdir
- -p never use its initial stat() to short-circuit directory creation, but
this will penalize normal usage because it will force calling mkdir for
every name in the chain even when the ultimate directory already exists.
I would much rather see a fix in cygwin so that coreutils would work out
of the box in this case.

Yes, I know, http://cygwin.com/acronyms/#SHTDI.  And yes, I realize that
such a change, if it is to ever happen, would be post-1.5.19, because of
its potential impact.

- --
Life is short - so eat dessert first!

Eric Blake             ebb9@byu.net
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (Cygwin)
Comment: Public key at home.comcast.net/~ericblake/eblake.gpg
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFDXi4q84KuGfSFAYARAs9mAJ9XDmBiBFKhiyWkMp/QIo7w9nOajwCgyavS
IRpd4Txkbbf22k5xXwXqchw=
=vKUA
-----END PGP SIGNATURE-----

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]