[SETUPLIB][USETUP] Factor out the usage of FS provider structures.
[reactos.git] / base / setup / usetup / chkdsk.c
index 26f9b79..615e702 100644 (file)
@@ -56,14 +56,9 @@ ChkdskCallback(
 NTSTATUS
 ChkdskPartition(
     IN PUNICODE_STRING DriveRoot,
-    /*IN PFILE_SYSTEM_ITEM FileSystemItem*/
-    IN PFILE_SYSTEM FileSystem)
+    IN PCWSTR FileSystemName)
 {
     NTSTATUS Status;
-    // PFILE_SYSTEM FileSystem = FileSystemItem->FileSystem;
-
-    if (!FileSystem || !FileSystem->ChkdskFunc)
-        return STATUS_NOT_SUPPORTED;
 
     ChkdskProgressBar = CreateProgressBar(6,
                                           yScreen - 14,
@@ -76,12 +71,13 @@ ChkdskPartition(
 
     ProgressSetStepCount(ChkdskProgressBar, 100);
 
-    Status = FileSystem->ChkdskFunc(DriveRoot,
-                                    TRUE,            /* FixErrors */
-                                    FALSE,           /* Verbose */
-                                    TRUE,            /* CheckOnlyIfDirty */
-                                    FALSE,           /* ScanDrive */
-                                    ChkdskCallback); /* Callback */
+    Status = ChkdskFileSystem_UStr(DriveRoot,
+                                   FileSystemName,
+                                   TRUE,            /* FixErrors */
+                                   FALSE,           /* Verbose */
+                                   TRUE,            /* CheckOnlyIfDirty */
+                                   FALSE,           /* ScanDrive */
+                                   ChkdskCallback); /* Callback */
 
     DestroyProgressBar(ChkdskProgressBar);
     ChkdskProgressBar = NULL;