[USETUP]
authorCameron Gutman <aicommander@gmail.com>
Sun, 29 Jan 2012 22:54:57 +0000 (22:54 +0000)
committerCameron Gutman <aicommander@gmail.com>
Sun, 29 Jan 2012 22:54:57 +0000 (22:54 +0000)
- 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

index 2ecca8f..3f8a98a 100644 (file)
@@ -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;
         }