RFR: 7038105 - File.isHidden() should return true for pagefile.sys and hiberfil.sys (original) (raw)

Alan Bateman Alan.Bateman at oracle.com
Tue May 14 11:21:48 UTC 2013


On 14/05/2013 02:59, Rob McKenna wrote:

Hi folks,

Looking for a review of this suggested fix from Fujitsu. GetFileAttributesExW() returns ERRORSHARINGVIOLATION for pagefile.sys and hiberfi.sys so we're falling back to FindFirstFile instead: http://cr.openjdk.java.net/~robm/7038105/webrev.01/ -Rob Thanks for taking this one and removed the crud that is the harding of c:\pagefile.sys.

Using FindFirstFile when GetFileAttributesExW fails when ERROR_SHARING_VIOLATION is the right approach but it needs an additional check on the attributes to see if they contain a reparse point, otherwise you return the attributes of the reparse point rather than the final file (try it with a symbolic link and you'll see what I mean). When it contains a reparse point then you can use getFileInformation to attempt to open the file (with sharing) and obtain the attributes.

One other idea is to rename it to getFinalAttributes and move it up to near the top so that it's with the other support functions.

-Alan.



More information about the core-libs-dev mailing list