This is the mail archive of the
mailing list for the Cygwin project.
Re: experimental coreutils-5.94-4
- From: Corinna Vinschen <corinna-cygwin at cygwin dot com>
- To: cygwin at cygwin dot com
- Date: Wed, 1 Mar 2006 16:45:41 +0100
- Subject: Re: experimental coreutils-5.94-4
- References: <022820061618.27185.440477D700069FD600006A3122069997350A050E040D0C079D0A@comcast.net> <20060228174432.GB27116@calimero.vinschen.de>
- Reply-to: cygwin at cygwin dot com
On Feb 28 18:44, Corinna Vinschen wrote:
> On Feb 28 16:18, Eric Blake wrote:
> > > On Feb 28 07:30, Eric Blake wrote:
> > > > This version fixes the coreutils bug in pwd when called from /, or from
> > > > anywhere in the // hierarchy. [...]
> > >
> > > What happened to the simple, but *always* working idea to call getcwd in
> > > pwd to evaluate the current working directory? The new implementation
> > > looks a bit maniac.
> > Ergo, this is an *experimental* release! I _purposefully_
> > crippled the working getcwd implementation to give the
> > readdir fallback code more exposure (and to root out
> > bugs in the coreutils fallback code). When cygwin 1.5.20
> > comes out, I will remove the cripple, and /bin/pwd will
> > once again be a super-efficient call to getcwd.
> Uh, I see. Thanks.
FYI, I've applied a patch today which has two purposes:
- For directories, which are used as mount points, the d_ino was the one
returned by Windows for this very directory entry. However, for mount
points, the inode number which should be returned (and which *is*
returned by stat) is the inode number of the target directory/ target
drive, the mount point points to. This is (hopefully correctly)
accomplished by the patch.
- As a fallout of this patch, mount points are now *always* listed with
readdir, even if they are dangling with no underlying file or
directory of the same name. For eveyone who didn't understand this
sentence, consider the both default mount points in /usr:
C:\cygwin\bin on /usr/bin type system (binmode)
C:\cygwin\lib on /usr/lib type system (binmode)
Without my patch, an `ls' on /usr didn't return the directories bin
and lib, except you created files or directories of this name in the
Now, with the patch, they are listed even though they don't exists in
reality on the drive. The additional advantage is that the shell's
file completion now also works for these paths.
Please test the next snapshot from http://cygwin.com/snapshots/ for
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Project Co-Leader cygwin AT cygwin DOT com
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html