CheckActiveBootPartition(PartitionList);
}
- if (wcscmp(FileSystemList->Selected->FileSystem, L"FAT") == 0)
- {
- /* FIXME: Install boot code. This is a hack! */
- if ((PartEntry->PartInfo[PartNum].PartitionType == PARTITION_FAT32_XINT13) ||
- (PartEntry->PartInfo[PartNum].PartitionType == PARTITION_FAT32))
- {
- wcscpy(PathBuffer, SourceRootPath.Buffer);
- wcscat(PathBuffer, L"\\loader\\fat32.bin");
-
- DPRINT("Install FAT32 bootcode: %S ==> %S\n", PathBuffer,
- DestinationRootPath.Buffer);
-
- Status = InstallFat32BootCodeToDisk(PathBuffer,
- DestinationRootPath.Buffer);
- if (!NT_SUCCESS(Status))
- {
- DPRINT1("InstallFat32BootCodeToDisk() failed with status 0x%08lx\n", Status);
- /* FIXME: show an error dialog */
- DestroyFileSystemList(FileSystemList);
- FileSystemList = NULL;
- return QUIT_PAGE;
- }
- }
- else
- {
- wcscpy(PathBuffer, SourceRootPath.Buffer);
- wcscat(PathBuffer, L"\\loader\\fat.bin");
-
- DPRINT("Install FAT bootcode: %S ==> %S\n", PathBuffer,
- DestinationRootPath.Buffer);
-
- Status = InstallFat16BootCodeToDisk(PathBuffer,
- DestinationRootPath.Buffer);
- if (!NT_SUCCESS(Status))
- {
- DPRINT1("InstallFat16BootCodeToDisk() failed with status 0x%.08x\n", Status);
- /* FIXME: show an error dialog */
- DestroyFileSystemList(FileSystemList);
- FileSystemList = NULL;
- return QUIT_PAGE;
- }
- }
- }
- else if (wcscmp(FileSystemList->Selected->FileSystem, L"EXT2") == 0)
- {
- wcscpy(PathBuffer, SourceRootPath.Buffer);
- wcscat(PathBuffer, L"\\loader\\ext2.bin");
-
- DPRINT("Install EXT2 bootcode: %S ==> %S\n", PathBuffer,
- DestinationRootPath.Buffer);
-
- Status = InstallFat32BootCodeToDisk(PathBuffer,
- DestinationRootPath.Buffer);
- if (!NT_SUCCESS(Status))
- {
- DPRINT1("InstallFat32BootCodeToDisk() failed with status 0x%08lx\n", Status);
- /* FIXME: show an error dialog */
- DestroyFileSystemList(FileSystemList);
- FileSystemList = NULL;
- return QUIT_PAGE;
- }
- }
- else if (FileSystemList->Selected->FormatFunc)
- {
- DestroyFileSystemList(FileSystemList);
- FileSystemList = NULL;
- return QUIT_PAGE;
- }
-
#ifndef NDEBUG
CONSOLE_SetStatusText(" Done. Press any key ...");
CONSOLE_ConInKey(Ir);