mirror of https://github.com/acidanthera/audk.git
Add back the BdsDeleteBootOption to pass build.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11283 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
a34688db37
commit
be88744770
|
@ -1441,3 +1441,59 @@ FormSetDispatcher (
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
Deletete the Boot Option from EFI Variable. The Boot Order Arrray
|
||||||
|
is also updated.
|
||||||
|
|
||||||
|
@param OptionNumber The number of Boot option want to be deleted.
|
||||||
|
@param BootOrder The Boot Order array.
|
||||||
|
@param BootOrderSize The size of the Boot Order Array.
|
||||||
|
|
||||||
|
@retval EFI_SUCCESS The Boot Option Variable was found and removed
|
||||||
|
@retval EFI_UNSUPPORTED The Boot Option Variable store was inaccessible
|
||||||
|
@retval EFI_NOT_FOUND The Boot Option Variable was not found
|
||||||
|
**/
|
||||||
|
EFI_STATUS
|
||||||
|
EFIAPI
|
||||||
|
BdsDeleteBootOption (
|
||||||
|
IN UINTN OptionNumber,
|
||||||
|
IN OUT UINT16 *BootOrder,
|
||||||
|
IN OUT UINTN *BootOrderSize
|
||||||
|
)
|
||||||
|
{
|
||||||
|
UINT16 BootOption[100];
|
||||||
|
UINTN Index;
|
||||||
|
EFI_STATUS Status;
|
||||||
|
UINTN Index2Del;
|
||||||
|
|
||||||
|
Status = EFI_SUCCESS;
|
||||||
|
Index2Del = 0;
|
||||||
|
|
||||||
|
UnicodeSPrint (BootOption, sizeof (BootOption), L"Boot%04x", OptionNumber);
|
||||||
|
Status = EfiLibDeleteVariable (BootOption, &gEfiGlobalVariableGuid);
|
||||||
|
|
||||||
|
//
|
||||||
|
// adjust boot order array
|
||||||
|
//
|
||||||
|
for (Index = 0; Index < *BootOrderSize / sizeof (UINT16); Index++) {
|
||||||
|
if (BootOrder[Index] == OptionNumber) {
|
||||||
|
Index2Del = Index;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Index != *BootOrderSize / sizeof (UINT16)) {
|
||||||
|
for (Index = 0; Index < *BootOrderSize / sizeof (UINT16) - 1; Index++) {
|
||||||
|
if (Index >= Index2Del) {
|
||||||
|
BootOrder[Index] = BootOrder[Index + 1];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
*BootOrderSize -= sizeof (UINT16);
|
||||||
|
}
|
||||||
|
|
||||||
|
return Status;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue