Module: wine Branch: master Commit: 404e590e06b4443d76bedfa1bc9f3c25dda6d8cb URL: https://gitlab.winehq.org/wine/wine/-/commit/404e590e06b4443d76bedfa1bc9f3c2...
Author: Nikolay Sivov nsivov@codeweavers.com Date: Thu Oct 27 19:48:01 2022 +0300
kernelbase: Forward some directory info classes in GetFileInformationByHandleEx().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53590 Signed-off-by: Nikolay Sivov nsivov@codeweavers.com
---
dlls/kernelbase/file.c | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-)
diff --git a/dlls/kernelbase/file.c b/dlls/kernelbase/file.c index 3e1fd5aec4e..c0cdfdcdf84 100644 --- a/dlls/kernelbase/file.c +++ b/dlls/kernelbase/file.c @@ -2967,12 +2967,8 @@ BOOL WINAPI DECLSPEC_HOTPATCH GetFileInformationByHandleEx( HANDLE handle, FILE_ case FileStreamInfo: case FileCompressionInfo: case FileRemoteProtocolInfo: - case FileFullDirectoryInfo: - case FileFullDirectoryRestartInfo: case FileStorageInfo: case FileAlignmentInfo: - case FileIdExtdDirectoryInfo: - case FileIdExtdDirectoryRestartInfo: FIXME( "%p, %u, %p, %lu\n", handle, class, info, size ); SetLastError( ERROR_CALL_NOT_IMPLEMENTED ); return FALSE; @@ -3004,6 +3000,20 @@ BOOL WINAPI DECLSPEC_HOTPATCH GetFileInformationByHandleEx( HANDLE handle, FILE_ (class == FileIdBothDirectoryRestartInfo) ); break;
+ case FileFullDirectoryInfo: + case FileFullDirectoryRestartInfo: + status = NtQueryDirectoryFile( handle, NULL, NULL, NULL, &io, info, size, + FileFullDirectoryInformation, FALSE, NULL, + (class == FileFullDirectoryRestartInfo) ); + break; + + case FileIdExtdDirectoryInfo: + case FileIdExtdDirectoryRestartInfo: + status = NtQueryDirectoryFile( handle, NULL, NULL, NULL, &io, info, size, + FileIdExtdDirectoryInformation, FALSE, NULL, + (class == FileIdExtdDirectoryRestartInfo) ); + break; + case FileRenameInfo: case FileDispositionInfo: case FileAllocationInfo: