On Sep 22 11:32, Corinna Vinschen wrote: > On Sep 22 07:45, Yoni Londner wrote: > > I checked out why, and found out that #1 and #2 don't modify the > > access time of the file, whereas #3 does. This already immediately > > I just checked this and I can't see that it does. If it would do > so, shouldn't the access time be different every time I call stat? > > $ stat foo | grep 'Access: [0-9]' > Access: 2010-09-09 16:27:20.769055700 +0200 > $ stat foo | grep 'Access: [0-9]' > Access: 2010-09-09 16:27:20.769055700 +0200 > $ stat foo | grep 'Access: [0-9]' > Access: 2010-09-09 16:27:20.769055700 +0200 > > I tried it on Windows XP SP3 and Windows 7.
Did you test this on a "noacl" mount, or on a filesystem which doesn't keep permissions, like FAT? If so, then I know what happens. This is the executable test in fhandler_base::fstat_helper. It reads the first two bytes from the file to identify executables by their magic number. This is especially done to identify shell scripts by their "#!" magic, so that they are marked as executable in st_mode. You can switch this off by specifing the "exec" or "notexec" mount options. Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Project Co-Leader cygwin AT cygwin DOT com Red Hat
