[CHKDSK][VFATLIB] Enable chkdsk /V to output filenames (#9501)

* Add FSCHECK_LIST_FILES to FsCheckFlags in vfatlib.c
* Remove some unneeded ifdef's for REACTOS
* Use SAL2 annotations in main functions

CORE-20771

Co-authored-by: Oleg Dubinskiy <oleg.dubinskij30@gmail.com>
Co-authored-by: Serge Gautherie <32623169+SergeGautherie@users.noreply.github.com>
This commit is contained in:
Doug Lyons
2026-09-07 18:00:17 -05:00
committed by GitHub
parent 3127ca03fb
commit dc6be46b93

View File

@@ -48,13 +48,13 @@ ULONG FsCheckTotalFiles;
BOOLEAN
NTAPI
VfatFormat(
IN PUNICODE_STRING DriveRoot,
IN PFMIFSCALLBACK Callback,
IN BOOLEAN QuickFormat,
IN BOOLEAN BackwardCompatible,
IN MEDIA_TYPE MediaType,
IN PUNICODE_STRING Label,
IN ULONG ClusterSize)
_In_ PUNICODE_STRING DriveRoot,
_In_ PFMIFSCALLBACK Callback,
_In_ BOOLEAN QuickFormat,
_In_ BOOLEAN BackwardCompatible,
_In_ MEDIA_TYPE MediaType,
_In_ PUNICODE_STRING Label,
_In_ ULONG ClusterSize)
{
OBJECT_ATTRIBUTES ObjectAttributes;
DISK_GEOMETRY DiskGeometry;
@@ -415,17 +415,17 @@ VfatPrint(PCHAR Format, ...)
BOOLEAN
NTAPI
VfatChkdsk(
IN PUNICODE_STRING DriveRoot,
IN PFMIFSCALLBACK Callback,
IN BOOLEAN FixErrors,
IN BOOLEAN Verbose,
IN BOOLEAN CheckOnlyIfDirty,
IN BOOLEAN ScanDrive,
IN PVOID pUnknown1,
IN PVOID pUnknown2,
IN PVOID pUnknown3,
IN PVOID pUnknown4,
IN PULONG ExitStatus)
_In_ PUNICODE_STRING DriveRoot,
_In_ PFMIFSCALLBACK Callback,
_In_ BOOLEAN FixErrors,
_In_ BOOLEAN Verbose,
_In_ BOOLEAN CheckOnlyIfDirty,
_In_ BOOLEAN ScanDrive,
_In_opt_ PVOID pUnknown1,
_In_opt_ PVOID pUnknown2,
_In_opt_ PVOID pUnknown3,
_In_opt_ PVOID pUnknown4,
_Out_ PULONG ExitStatus)
{
BOOLEAN verify;
BOOLEAN salvage_files;
@@ -448,7 +448,7 @@ VfatChkdsk(
/* Set parameters */
FsCheckFlags = 0;
if (Verbose)
FsCheckFlags |= FSCHECK_VERBOSE;
FsCheckFlags |= FSCHECK_VERBOSE | FSCHECK_LIST_FILES;
if (FixErrors)
FsCheckFlags |= FSCHECK_READ_WRITE;
@@ -545,7 +545,6 @@ VfatChkdsk(
}
}
#ifdef __REACTOS__
if (DriveRoot->Buffer[0] == '\\' && DriveRoot->Buffer[1] == '?' &&
DriveRoot->Buffer[2] == '?' && DriveRoot->Buffer[3] == '\\')
{
@@ -559,10 +558,7 @@ VfatChkdsk(
else
VfatPrint("%wZ: %u files, %lu/%lu clusters\n", DriveRoot,
FsCheckTotalFiles, fs.data_clusters - free_clusters, fs.data_clusters);
#else
VfatPrint("%wZ: %u files, %lu/%lu clusters\n", DriveRoot,
FsCheckTotalFiles, fs.data_clusters - free_clusters, fs.data_clusters);
#endif
if (FsCheckFlags & FSCHECK_READ_WRITE)
{
/* Dismount the volume */