* fhandler.h (fhandler_base::fstat_helper): Declare with additional
file attributes argument. * fhandler_disk_file.cc (fhandler_base::fstat_by_handle): Use file attributes evaluated from NtQueryFileInformation or FileInformationByHandle in call to fstat_helper. Set pc.fileattr from just evaluated file attributes here. (fhandler_base::fstat_by_name): Use file attributes evaluated from FindFileFirst or default attribute in call to fstat_helper. Set pc.fileattr from just evaluated file attributes here. (fhandler_base::fstat_helper): Use file attributes given as argument, not file attributes stored in this fhandler, since this information is potentially wrong. Add comment to explain this. * path.h (has_attribute): New global inline function. (path_conv::set_attributes): New method to change fileattr.
This commit is contained in:
@@ -272,7 +272,8 @@ class fhandler_base
|
||||
LONGLONG nAllocSize,
|
||||
DWORD nFileIndexHigh,
|
||||
DWORD nFileIndexLow,
|
||||
DWORD nNumberOfLinks)
|
||||
DWORD nNumberOfLinks,
|
||||
DWORD dwFileAttributes)
|
||||
__attribute__ ((regparm (3)));
|
||||
int __stdcall fstat_by_handle (struct __stat64 *buf) __attribute__ ((regparm (2)));
|
||||
int __stdcall fstat_by_name (struct __stat64 *buf) __attribute__ ((regparm (2)));
|
||||
|
Reference in New Issue
Block a user