I think that shell32 in shfldr_unixfs.c should check this setting
instead. Since it's skipping ntdll and using the Unix file APIs
directly, it should report the same thing to applications that ntdll
does, namely that dotfiles are not hidden files.
I have been looking at this just now and would like some more advice. In ntdll a number of things are done:
* The registry key is only read once (I presume for performance reasons)
* The DIR_is_hidden_file is called for every file
* Folders like /dev, /proc, wine config, ... are always hidden
It seems strange to me to reimplement all this logic and I figure it is desired to have the same behavior in both components so I would like to abstract it to a common base, however:
* What is the best place to do this? To me somewhere in the libs seemed logical but I noticed that nowhere in there registry keys are being read so am I wrong thinking this is undesired behavior there? Is there a dll I could put this common code?
* ntdll and shell32 use different functions to access registry keys, would it be a problem if the common code would only use the RegOpenKey functions?