]> git.proxmox.com Git - mirror_edk2.git/blobdiff - EdkNt32Pkg/Dxe/PlatformBds/Generic/DeviceMngr/DeviceManager.c
BDS code calls Hii->FindHandles() with hardcoded length.
[mirror_edk2.git] / EdkNt32Pkg / Dxe / PlatformBds / Generic / DeviceMngr / DeviceManager.c
index c186fee9a39e12685b2156ffb86e00bb26246134..2da9c6fa369b6a6cc097218499148854be13ca01 100644 (file)
@@ -201,6 +201,7 @@ Returns:
 \r
   IfrOptionList       = NULL;\r
   VideoOption         = NULL;\r
+  HiiHandles          = NULL;\r
   HandleBufferLength  = 0;\r
 \r
   //\r
@@ -268,8 +269,11 @@ Returns:
   CreateSubTitleOpCode (STR_EMPTY_STRING, &UpdateData->Data);\r
   Hii->UpdateForm (Hii, FPCallbackInfo.DevMgrHiiHandle, (EFI_FORM_LABEL) Count, TRUE, UpdateData);\r
 \r
-  HiiHandles = AllocateZeroPool (HandleBufferLength);\r
-  Hii->FindHandles (Hii, &HandleBufferLength, HiiHandles);\r
+  //\r
+  // Get all the Hii handles\r
+  //\r
+  Status = BdsLibGetHiiHandles (Hii, &HandleBufferLength, &HiiHandles);\r
+  ASSERT_EFI_ERROR (Status);\r
 \r
   for (Index = 1, BufferSize = 0; Index < HandleBufferLength; Index++) {\r
     //\r
@@ -487,6 +491,7 @@ Returns:
   }\r
 \r
   gBS->FreePool (UpdateData);\r
+  gBS->FreePool (HiiHandles);\r
 \r
   return Status;\r
 }\r