Mail Archives: cygwin/2006/02/13/08:50:37
--- Larrie Carr wrote:
> Subject: octave does not recurse LOADPATH directories located on the network
> in cygwin
> From: "Larrie Carr"
> To: <bug AT octave DOT org>
> Date: Sun, 12 Feb 2006 17:38:40 -0600
>
> In a cygwin environment, octave does not recursively search through LOADPATH
> directories if the directories are located on network drives.
>
> The problem is due to the use of stat() to calculate link_num in dir_link()
> in kpse.cc. In a cygwin environment, stat() always reports 1 for a
> directory located on a network drive. A test case using stat on the command
> line where the root of cygwin is stored on a network drive (x: in this
> case).
>
> $stat -c "%h %f" /cygdrive/c/test
> 2 41c0
>
> $stat -c "%h %f" /usr/share/octave
> 1 41ed
>
> $stat -c "%h %f" /cygdrive/x/cygwin/usr/share/octave
> 1 41ed
>
> $ls -l /usr/share/octave
> total 0
> drwxr-xr-x 1 larrie mkpasswd 0 Feb 8 23.31 2.1.72
> drwxr-xr-x 1 larrie mkpasswd 0 Feb 8 23.31 site
>
> Looking at 2.1.72, The code within do_subdir() does not handle 1 as a
> subdirectory as it
> expects a non-empty subdirectory is >2.
>
> I don't know why cygwin only reports 1 for a network drive, except other
> people have seen this. For instance, perl on cygwin,
>
> http://www.scit.wlv.ac.uk/~jphb/perl/pod/perlcygwin.html
> Hard Links
> FAT partitions do not support hard links (whereas NTFS does), in which case
> Cygwin implements link() by copying the file. On remote (network) drives
> Cygwin's stat() always sets st_nlink to 1, so the link count for remote
> directories and files is not available. In either case, these tests will
> fail:
>
> Failed Test List of failed
> ------------------------------------
> io/fs.t 4
> op/stat.t 3
>
> However, stat() always correctly identifies the path as a directory. I
> guess a fix would be to remove the optimization so that every subdirectory
> is recursed into and then handle the "." cases as before to allow empty
> directories to work as before.
>
> Larrie.
>
Thanks very much for your investigation. I will await upstream action on this
issue. Forwarding to the cygwin mailing list for comment.
James R. Phillips
cygwin octave packager
--
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/
- Raw text -