From: xli24 Date: Thu, 11 Jan 2007 08:03:27 +0000 (+0000) Subject: Add checking for memory allocation in UI modules. X-Git-Tag: edk2-stable201903~23658 X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=commitdiff_plain;h=41a907e423eaa4eec32b924c89474e1285abd012 Add checking for memory allocation in UI modules. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2219 6f19259b-4bc3-4df7-8a09-765794883524 --- diff --git a/EdkModulePkg/Universal/UserInterface/DriverSample/DriverSample.c b/EdkModulePkg/Universal/UserInterface/DriverSample/DriverSample.c index 5f3823c612..c383d1660a 100644 --- a/EdkModulePkg/Universal/UserInterface/DriverSample/DriverSample.c +++ b/EdkModulePkg/Universal/UserInterface/DriverSample/DriverSample.c @@ -94,11 +94,13 @@ Returns: // Need some memory for OptionList. Allow for up to 8 options. // OptionList = AllocateZeroPool (sizeof (IFR_OPTION) * 8); + ASSERT (OptionList != NULL); // // Allocate space for creation of Buffer // UpdateData = AllocateZeroPool (0x1000); + ASSERT (UpdateData != NULL); // // Remove all the op-codes starting with Label 0x2222 to next Label (second label is for convenience @@ -170,11 +172,13 @@ Returns: // Need some memory for OptionList. Allow for up to 8 options. // OptionList = AllocateZeroPool (sizeof (IFR_OPTION) * 8); + ASSERT (OptionList != NULL); // // Allocate space for creation of Buffer // UpdateData = AllocateZeroPool (0x1000); + ASSERT (UpdateData != NULL); // // Remove all the op-codes starting with Label 0x2222 to next Label (second label is for convenience @@ -244,6 +248,7 @@ Returns: 0x1000, (VOID **) &UpdateData ); + ASSERT_EFI_ERROR (Status); ZeroMem (UpdateData, 0x1000); @@ -297,6 +302,7 @@ Returns: 0x1000, (VOID **)&UpdateData ); + ASSERT_EFI_ERROR (Status); ZeroMem (UpdateData, 0x1000); @@ -366,6 +372,7 @@ Returns: sizeof (EFI_HII_CALLBACK_PACKET) + sizeof (SAMPLE_STRING) + 2, (VOID **) Packet ); + ASSERT_EFI_ERROR (Status); ZeroMem (*Packet, sizeof (EFI_HII_CALLBACK_PACKET) + sizeof (SAMPLE_STRING) + 2); @@ -384,6 +391,7 @@ Returns: sizeof (EFI_HII_CALLBACK_PACKET) + 2, (VOID **) Packet ); + ASSERT_EFI_ERROR (Status); ZeroMem (*Packet, sizeof (EFI_HII_CALLBACK_PACKET) + 2); @@ -585,6 +593,7 @@ DriverSampleInit ( 0x1000, (VOID **) &UpdateData ); + ASSERT_EFI_ERROR (Status); ZeroMem (UpdateData, 0x1000); diff --git a/EdkModulePkg/Universal/UserInterface/HiiDataBase/Dxe/Forms.c b/EdkModulePkg/Universal/UserInterface/HiiDataBase/Dxe/Forms.c index 2c625fe86e..4178284a49 100644 --- a/EdkModulePkg/Universal/UserInterface/HiiDataBase/Dxe/Forms.c +++ b/EdkModulePkg/Universal/UserInterface/HiiDataBase/Dxe/Forms.c @@ -1409,6 +1409,8 @@ Returns: TempBufferSize += PackageInstance->IfrSize + PackageInstance->StringSize; TempBuffer = AllocateZeroPool (TempBufferSize); + ASSERT (TempBuffer != NULL); + OrigTempBuffer = TempBuffer; // diff --git a/EdkModulePkg/Universal/UserInterface/SetupBrowser/Dxe/InputHandler.c b/EdkModulePkg/Universal/UserInterface/SetupBrowser/Dxe/InputHandler.c index d84fcf02b1..466039f8dc 100644 --- a/EdkModulePkg/Universal/UserInterface/SetupBrowser/Dxe/InputHandler.c +++ b/EdkModulePkg/Universal/UserInterface/SetupBrowser/Dxe/InputHandler.c @@ -1233,6 +1233,7 @@ GetSelectionInputPopUp ( // if (StrLen (StringPtr) > (PopUpWidth - 1)) { TempStringPtr = AllocateZeroPool (sizeof (CHAR16) * (PopUpWidth - 1)); + ASSERT (TempStringPtr != NULL); CopyMem (TempStringPtr, StringPtr, (sizeof (CHAR16) * (PopUpWidth - 5))); gBS->FreePool (StringPtr); StringPtr = TempStringPtr; diff --git a/EdkModulePkg/Universal/UserInterface/SetupBrowser/Dxe/Ui.c b/EdkModulePkg/Universal/UserInterface/SetupBrowser/Dxe/Ui.c index 7a2ec04403..369d2b4911 100644 --- a/EdkModulePkg/Universal/UserInterface/SetupBrowser/Dxe/Ui.c +++ b/EdkModulePkg/Universal/UserInterface/SetupBrowser/Dxe/Ui.c @@ -3003,7 +3003,10 @@ Returns: FileFormTags->VariableDefinitions->VariableFakeSize = (UINT16) (FileFormTags->VariableDefinitions->VariableFakeSize + FileFormTags->VariableDefinitions->VariableSize); FileFormTags->VariableDefinitions->NvRamMap = AllocateZeroPool (FileFormTags->VariableDefinitions->VariableSize); + ASSERT (FileFormTags->VariableDefinitions->NvRamMap != NULL); + FileFormTags->VariableDefinitions->FakeNvRamMap = AllocateZeroPool (NvMapSize + FileFormTags->VariableDefinitions->VariableFakeSize); + ASSERT (FileFormTags->VariableDefinitions->FakeNvRamMap != NULL); CopyMem (FileFormTags->VariableDefinitions->NvRamMap, NvMap, NvMapSize); gBS->FreePool (NvMapListHead);