From d5f187d853eaebe735d9756b7fc9b62aba299c60 Mon Sep 17 00:00:00 2001 From: Cameron Gutman Date: Sun, 29 Jan 2012 22:54:57 +0000 Subject: [PATCH] [USETUP] - Fix the ordering of disks in the 1st stage setup list - Search for the active partition on the selected install disk instead of the first disk svn path=/branches/usb-bringup-trunk/; revision=55299 --- base/setup/usetup/partlist.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/base/setup/usetup/partlist.c b/base/setup/usetup/partlist.c index 2ecca8f3fc8..3f8a98ab3dd 100644 --- a/base/setup/usetup/partlist.c +++ b/base/setup/usetup/partlist.c @@ -875,7 +875,7 @@ AddDiskToList (HANDLE FileHandle, GetDriverName (DiskEntry); - InsertAscendingList(&List->DiskListHead, DiskEntry, DISKENTRY, ListEntry, BiosDiskNumber); + InsertAscendingList(&List->DiskListHead, DiskEntry, DISKENTRY, ListEntry, DiskNumber); /* * Allocate a buffer for 26 logical drives (2 entries each == 52) @@ -2377,9 +2377,8 @@ CheckActiveBootPartition (PPARTLIST List) } #endif - DiskEntry = CONTAINING_RECORD (List->DiskListHead.Flink, - DISKENTRY, - ListEntry); + /* Choose the currently selected disk */ + DiskEntry = List->CurrentDisk; /* Check for empty partition list */ if (IsListEmpty (&DiskEntry->PartListHead)) @@ -2440,7 +2439,7 @@ CheckActiveBootPartition (PPARTLIST List) List->ActiveBootPartitionNumber = i; DPRINT("Found bootable partition disk %d, drive letter %c\n", - DiskEntry->BiosDiskNumber, PartEntry->DriveLetter[i]); + DiskEntry->DiskNumber, PartEntry->DriveLetter[i]); break; }