mirror of
https://github.com/reactos/reactos.git
synced 2026-09-09 02:44:55 +08:00
[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:
@@ -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 */
|
||||
|
||||
Reference in New Issue
Block a user