[USETUP] Check the status value of BuildInstallPaths() (#1349)
authorBișoc George <fraizeraust99@gmail.com>
Wed, 13 Feb 2019 14:22:28 +0000 (15:22 +0100)
committerHermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
Wed, 13 Feb 2019 14:22:28 +0000 (15:22 +0100)
base/setup/usetup/usetup.c

index a9a4f81..f10effd 100644 (file)
@@ -3324,6 +3324,7 @@ InstallDirectoryPage(PINPUT_RECORD Ir)
     WCHAR InstallDir[MAX_PATH];
     WCHAR c;
     ULONG Length, Pos;
+    NTSTATUS Status;
 
     /* We do not need the filesystem list anymore */
     if (FileSystemList != NULL)
@@ -3360,9 +3361,17 @@ InstallDirectoryPage(PINPUT_RECORD Ir)
      */
     if ((RepairUpdateFlag || IsUnattendedSetup) && IsValidPath(InstallDir))
     {
-        BuildInstallPaths(InstallDir,
-                          DiskEntry,
-                          PartEntry);
+        Status = BuildInstallPaths(InstallDir,
+                                   DiskEntry,
+                                   PartEntry);
+        if (!NT_SUCCESS(Status))
+        {
+            DPRINT1("BuildInstallPaths() failed. Status code: 0x%lx", Status);
+            PopupError("Failed to build the installation paths for the ReactOS installation directory!",
+                       MUIGetString(STRING_CONTINUE),
+                       Ir, POPUP_WAIT_ENTER);
+            return QUIT_PAGE;
+        }
 
         /*
          * Check whether the user attempts to install ReactOS within the
@@ -3462,9 +3471,17 @@ InstallDirectoryPage(PINPUT_RECORD Ir)
                 return INSTALL_DIRECTORY_PAGE;
             }
 
-            BuildInstallPaths(InstallDir,
-                              DiskEntry,
-                              PartEntry);
+            Status = BuildInstallPaths(InstallDir,
+                                       DiskEntry,
+                                       PartEntry);
+            if (!NT_SUCCESS(Status))
+            {
+                DPRINT1("BuildInstallPaths() failed. Status code: 0x%lx", Status);
+                PopupError("Failed to build the installation paths for the ReactOS installation directory!",
+                           MUIGetString(STRING_CONTINUE),
+                           Ir, POPUP_WAIT_ENTER);
+                return QUIT_PAGE;
+            }
 
             /*
              * Check whether the user attempts to install ReactOS within the