From 8235a5df621a675a5cc2cefdb576cc6265e4bb6c Mon Sep 17 00:00:00 2001 From: Eric Kohl Date: Wed, 31 Dec 2014 20:51:56 +0000 Subject: [PATCH] [USETUP] You can install ReactOS on 'unpartitioned space' again. Usetup will create a primary partition that spans the whole unpartitioned space, format the partition and install ReactOS on that partition. svn path=/trunk/; revision=65923 --- reactos/base/setup/usetup/interface/usetup.c | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/reactos/base/setup/usetup/interface/usetup.c b/reactos/base/setup/usetup/interface/usetup.c index f8d0584e332..656163aa7fd 100644 --- a/reactos/base/setup/usetup/interface/usetup.c +++ b/reactos/base/setup/usetup/interface/usetup.c @@ -46,6 +46,7 @@ UNICODE_STRING SourceRootPath; UNICODE_STRING SourceRootDir; UNICODE_STRING SourcePath; BOOLEAN IsUnattendedSetup = FALSE; +BOOLEAN InstallShortcut = FALSE; LONG UnattendDestinationDiskNumber; LONG UnattendDestinationPartitionNumber; LONG UnattendMBRInstallType = -1; @@ -1601,19 +1602,22 @@ SelectPartitionPage(PINPUT_RECORD Ir) if (IsContainerPartition(PartitionList->CurrentPartition->PartitionType)) continue; //return SELECT_PARTITION_PAGE; + if (!IsDiskSizeValid(PartitionList->CurrentPartition)) + { + MUIDisplayError(ERROR_INSUFFICIENT_PARTITION_SIZE, Ir, POPUP_WAIT_ANY_KEY, + RequiredPartitionDiskSpace); + continue; //return SELECT_PARTITION_PAGE; /* let the user select another partition */ + } + if (PartitionList->CurrentPartition == NULL || PartitionList->CurrentPartition->IsPartitioned == FALSE) { CreatePrimaryPartition(PartitionList, 0ULL, TRUE); - } + InstallShortcut = TRUE; - if (!IsDiskSizeValid(PartitionList->CurrentPartition)) - { - MUIDisplayError(ERROR_INSUFFICIENT_PARTITION_SIZE, Ir, POPUP_WAIT_ANY_KEY, - RequiredPartitionDiskSpace); - return SELECT_PARTITION_PAGE; /* let the user select another partition */ + return SELECT_FILE_SYSTEM_PAGE; } DestinationDriveLetter = (WCHAR)PartitionList->CurrentPartition->DriveLetter; @@ -2875,7 +2879,7 @@ FormatPartitionPage(PINPUT_RECORD Ir) DestroyFileSystemList(FileSystemList); FileSystemList = NULL; - if (IsUnattendedSetup) + if (IsUnattendedSetup || InstallShortcut) return INSTALL_DIRECTORY_PAGE; else return SELECT_PARTITION_PAGE;