mirror of
https://github.com/acidanthera/audk.git
synced 2025-07-30 00:54:06 +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));
|
*OutputBuffer = AllocatePages (EFI_SIZE_TO_PAGES (OutputBufferSize));
|
||||||
if (*OutputBuffer == NULL) {
|
if (*OutputBuffer == NULL) {
|
||||||
|
if (ScratchBufferSize != 0) {
|
||||||
|
FreePages (ScratchBuffer, EFI_SIZE_TO_PAGES (ScratchBufferSize));
|
||||||
|
}
|
||||||
return EFI_OUT_OF_RESOURCES;
|
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));
|
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
|
// Decode failed
|
||||||
//
|
//
|
||||||
DEBUG ((DEBUG_ERROR, "Extract guided section Failed - %r\n", Status));
|
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;
|
return Status;
|
||||||
}
|
}
|
||||||
|
|
||||||
*OutputSize = (UINTN) OutputBufferSize;
|
*OutputSize = (UINTN) OutputBufferSize;
|
||||||
|
|
||||||
|
if (ScratchBufferSize != 0) {
|
||||||
|
FreePages (ScratchBuffer, EFI_SIZE_TO_PAGES (ScratchBufferSize));
|
||||||
|
}
|
||||||
|
|
||||||
return EFI_SUCCESS;
|
return EFI_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -734,6 +747,7 @@ Decompress (
|
|||||||
//
|
//
|
||||||
DstBuffer = AllocatePages (EFI_SIZE_TO_PAGES (DstBufferSize));
|
DstBuffer = AllocatePages (EFI_SIZE_TO_PAGES (DstBufferSize));
|
||||||
if (DstBuffer == NULL) {
|
if (DstBuffer == NULL) {
|
||||||
|
FreePages (ScratchBuffer, EFI_SIZE_TO_PAGES (ScratchBufferSize));
|
||||||
return EFI_OUT_OF_RESOURCES;
|
return EFI_OUT_OF_RESOURCES;
|
||||||
}
|
}
|
||||||
//
|
//
|
||||||
@ -749,8 +763,13 @@ Decompress (
|
|||||||
// Decompress failed
|
// Decompress failed
|
||||||
//
|
//
|
||||||
DEBUG ((DEBUG_ERROR, "Decompress Failed - %r\n", Status));
|
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;
|
return EFI_NOT_FOUND;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
FreePages (ScratchBuffer, EFI_SIZE_TO_PAGES (ScratchBufferSize));
|
||||||
|
|
||||||
break;
|
break;
|
||||||
} else {
|
} else {
|
||||||
//
|
//
|
||||||
@ -832,4 +851,3 @@ UpdateStackHob (
|
|||||||
Hob.Raw = GET_NEXT_HOB (Hob);
|
Hob.Raw = GET_NEXT_HOB (Hob);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user