On Sep 13 13:28, Yoni Londner wrote:
Hi,
However, isn't that kind of a chicken/egg situation? If you want to
reuse the content of the FILE_BOTH{_ID}_DIRECTORY_INFORMATION structure
from a previous call to readdir, you would have to call the
I am not talking about reusing info from a previous readdir.
Every single file cygwin tries to access, it does it in a loop,
trying afterwards to check for *.lnk file.
Using the directory query operations, it is possible to get this
info faster:
instead of getting file info for FOO and then for "FOO.lnk",
Cygwin can query the directory info for "FOO FOO.LNK" (for the file
requested, plus its possible symlink file).
I don't understand how you think this should work. The filter expression
given to NtQueryDirectoryFile is either a constant string and has to match
the filename exactly, or it contains wildcards. This is documented
behaviour: http://msdn.microsoft.com/en-us/library/ff567047%28VS.85%29.aspx
So, "foo" works, "foo*" works, but a list like "foo foo.exe foo.lnk"
does not.
There's also the problem of handling NFS shares. However, I just had an
idea how to speed up symlink_info::check without neglecting NFS shares.
This will take some time, though since it turns a lot of code upside
down. Stay tuned.
Corinna