From 0d34b1cfc73c48c08cb1eab81741e9ebd623a355 Mon Sep 17 00:00:00 2001 From: klu2 Date: Fri, 27 Nov 2009 04:05:25 +0000 Subject: Use AllocateZeroPool instead of using AllocatePool + ZeroMem git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9495 6f19259b-4bc3-4df7-8a09-765794883524 --- MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.c | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) (limited to 'MdeModulePkg') diff --git a/MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.c b/MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.c index 03b8b24..1cf7802 100644 --- a/MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.c +++ b/MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.c @@ -358,12 +358,12 @@ SmbiosAdd ( // // Allocate internal buffer // - SmbiosEntry = AllocatePool (TotalSize); + SmbiosEntry = AllocateZeroPool (TotalSize); if (SmbiosEntry == NULL) { EfiReleaseLock (&Private->DataLock); return EFI_OUT_OF_RESOURCES; } - HandleEntry = AllocatePool (sizeof(SMBIOS_HANDLE_ENTRY)); + HandleEntry = AllocateZeroPool (sizeof(SMBIOS_HANDLE_ENTRY)); if (HandleEntry == NULL) { EfiReleaseLock (&Private->DataLock); return EFI_OUT_OF_RESOURCES; @@ -372,12 +372,10 @@ SmbiosAdd ( // // Build Handle Entry and insert into linked list // - ZeroMem(HandleEntry, sizeof(SMBIOS_HANDLE_ENTRY)); HandleEntry->Signature = SMBIOS_HANDLE_ENTRY_SIGNATURE; HandleEntry->SmbiosHandle = *SmbiosHandle; InsertTailList(&Private->AllocatedHandleListHead, &HandleEntry->Link); - ZeroMem (SmbiosEntry, TotalSize); InternalRecord = (EFI_SMBIOS_RECORD_HEADER *) (SmbiosEntry + 1); Raw = (VOID *) (InternalRecord + 1); @@ -528,14 +526,13 @@ SmbiosUpdateString ( // Re-allocate buffer is needed. // NewEntrySize = SmbiosEntry->RecordSize + InputStrLen - TargetStrLen; - ResizedSmbiosEntry = AllocatePool (NewEntrySize); + ResizedSmbiosEntry = AllocateZeroPool (NewEntrySize); if (ResizedSmbiosEntry == NULL) { EfiReleaseLock (&Private->DataLock); return EFI_OUT_OF_RESOURCES; } - ZeroMem (ResizedSmbiosEntry, NewEntrySize); InternalRecord = (EFI_SMBIOS_RECORD_HEADER *) (ResizedSmbiosEntry + 1); Raw = (VOID *) (InternalRecord + 1); @@ -811,7 +808,7 @@ SmbiosCreateTable ( // // Free the original image // - if (EntryPointStructure->TableAddress) { + if (EntryPointStructure->TableAddress != 0) { FreePages ( (VOID*)(UINTN)EntryPointStructure->TableAddress, EFI_SIZE_TO_PAGES (EntryPointStructure->TableLength) @@ -822,8 +819,8 @@ SmbiosCreateTable ( // // Locate smbios protocol to traverse smbios records. // - gBS->LocateProtocol (&gEfiSmbiosProtocolGuid, NULL, (VOID **) &SmbiosProtocol); - + Status = gBS->LocateProtocol (&gEfiSmbiosProtocolGuid, NULL, (VOID **) &SmbiosProtocol); + ASSERT_EFI_ERROR (Status); ASSERT (SmbiosProtocol != NULL); // @@ -851,7 +848,7 @@ SmbiosCreateTable ( // // Record NumberOfSmbiosStructures, TableLength and MaxStructureSize // - EntryPointStructure->NumberOfSmbiosStructures++; + EntryPointStructure->NumberOfSmbiosStructures ++; EntryPointStructure->TableLength = (UINT16) (EntryPointStructure->TableLength + RecordSize); if (RecordSize > EntryPointStructure->MaxStructureSize) { EntryPointStructure->MaxStructureSize = (UINT16) RecordSize; -- cgit v1.1