mirror of
https://github.com/acidanthera/audk.git
synced 2025-04-08 17:05:09 +02:00
Svace: Fixed MEMORY_LEAK warning.
This commit is contained in:
parent
d71c131743
commit
fc244c6f0b
@ -617,6 +617,9 @@ CustomGuidedSectionExtract (
|
||||
//
|
||||
*OutputBuffer = AllocatePages (EFI_SIZE_TO_PAGES (OutputBufferSize));
|
||||
if (*OutputBuffer == NULL) {
|
||||
if (ScratchBufferSize != 0) {
|
||||
FreePages (ScratchBuffer, EFI_SIZE_TO_PAGES (ScratchBufferSize));
|
||||
}
|
||||
return EFI_OUT_OF_RESOURCES;
|
||||
}
|
||||
DEBUG ((DEBUG_INFO, "Customized Guided section Memory Size required is 0x%x and address is 0x%p\n", OutputBufferSize, *OutputBuffer));
|
||||
@ -633,11 +636,21 @@ CustomGuidedSectionExtract (
|
||||
// Decode failed
|
||||
//
|
||||
DEBUG ((DEBUG_ERROR, "Extract guided section Failed - %r\n", Status));
|
||||
if (ScratchBufferSize != 0) {
|
||||
FreePages (ScratchBuffer, EFI_SIZE_TO_PAGES (ScratchBufferSize));
|
||||
}
|
||||
if (*OutputBuffer != NULL) {
|
||||
FreePages (*OutputBuffer, EFI_SIZE_TO_PAGES (OutputBufferSize));
|
||||
}
|
||||
return Status;
|
||||
}
|
||||
|
||||
*OutputSize = (UINTN) OutputBufferSize;
|
||||
|
||||
if (ScratchBufferSize != 0) {
|
||||
FreePages (ScratchBuffer, EFI_SIZE_TO_PAGES (ScratchBufferSize));
|
||||
}
|
||||
|
||||
return EFI_SUCCESS;
|
||||
}
|
||||
|
||||
@ -734,6 +747,7 @@ Decompress (
|
||||
//
|
||||
DstBuffer = AllocatePages (EFI_SIZE_TO_PAGES (DstBufferSize));
|
||||
if (DstBuffer == NULL) {
|
||||
FreePages (ScratchBuffer, EFI_SIZE_TO_PAGES (ScratchBufferSize));
|
||||
return EFI_OUT_OF_RESOURCES;
|
||||
}
|
||||
//
|
||||
@ -749,8 +763,13 @@ Decompress (
|
||||
// Decompress failed
|
||||
//
|
||||
DEBUG ((DEBUG_ERROR, "Decompress Failed - %r\n", Status));
|
||||
FreePages (ScratchBuffer, EFI_SIZE_TO_PAGES (ScratchBufferSize));
|
||||
FreePages (DstBuffer, EFI_SIZE_TO_PAGES (DstBufferSize));
|
||||
return EFI_NOT_FOUND;
|
||||
}
|
||||
|
||||
FreePages (ScratchBuffer, EFI_SIZE_TO_PAGES (ScratchBufferSize));
|
||||
|
||||
break;
|
||||
} else {
|
||||
//
|
||||
@ -832,4 +851,3 @@ UpdateStackHob (
|
||||
Hob.Raw = GET_NEXT_HOB (Hob);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user