On Feb 10 04:18, Robert Pendell wrote: > Well I thought to take my hand at it and see what the strace looked > like. I followed it against a good strace from one of my own local > directories. If you search for fhandler_disk_file::opendir you will > find that it fails with error 2 which appears to make subsequent > attempts to access information fail (errno 89). You will only find one > reference to that handler. Afterwards it silently fails. > > Please correct me if I am wrong here.
The opendir works fine. It returns a valid DIR pointer as you can see in the line before the geterrno_from_win_error. What happens looks like this: opendir succeeds. In the first call to readdir, NtQueryDirectoryFile generates a Win32 error 2, "No such file" so readdir fakes a "." directory entry. In the next call NtQueryDirectoryFile generates a Win32 error 18, "No more files". readdir fakes a ".." entry. In the next call NtQueryDirectoryFile generates another Win32 error 18 and readdir finally fails with errno 89, "No more files". The first error, Win32 error 2 is very strange and I have no explanation for this. Maybe it's not enough for OCFS to open the directory handle with FILE_LIST_DIRECTORY access. It might help to use GENERIC_READ in opendir instead. This should be tested by somebody with OCFS access. Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Project Co-Leader cygwin AT cygwin DOT com Red Hat -- 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/