-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 According to Eric Blake on 8/22/2005 6:09 AM: >>>Huh? Strace shows that sh fails when trying to stat /a. Does this, >>>perhaps, have something to do with bash switching to POSIX mode when >>>invoked as "sh"? > > Yes it does. I'll have to look into bash POSIX mode further, and decide > why cd only stat's intermediate paths in POSIX mode, to see if it warrants > a patch to bash.
Sure enough, on 'cd -L', bash always checks for the existance of the entire path, then checks for posixly_correct, then tries chdir(); so bash succeeds where sh fails when an intermediate path name didn't exist. A patch will be provided in bash-3.0-12 whereby if chdir() can succeed even though intermediate components don't exist, then bash will allow it even in posix mode. My understanding of cygwin is that since //, /proc, and /cygdrive always exist, and /dev has no subdirectories (and in the latest snapshot, even /dev exists - thanks cgf!), the only time chdir(dir) can succeed when stat(basename(dir)) fails is with 2-level forced mount points. - -- Life is short - so eat dessert first! Eric Blake [EMAIL PROTECTED] -----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 iD8DBQFDDHAZ84KuGfSFAYARAqVqAJ4i1444fGOD/jdnIMP1MfWrjPwOGACeL5rL OtyTgumkWizDra2iFnBCty0= =IWFC -----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/