summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--MdeModulePkg/Core/Dxe/Image/Image.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/MdeModulePkg/Core/Dxe/Image/Image.c b/MdeModulePkg/Core/Dxe/Image/Image.c
index 125134d..3587460 100644
--- a/MdeModulePkg/Core/Dxe/Image/Image.c
+++ b/MdeModulePkg/Core/Dxe/Image/Image.c
@@ -208,7 +208,9 @@ Returns:
UINTN Size;
UINTN LinkTimeBase;
EFI_TCG_PLATFORM_PROTOCOL *TcgPlatformProtocol;
+ IMAGE_FILE_HANDLE *FHandle;
+ FHandle = NULL;
ZeroMem (&Image->ImageContext, sizeof (Image->ImageContext));
Image->ImageContext.Handle = Pe32Handle;
@@ -362,17 +364,18 @@ Returns:
NULL,
(VOID **) &TcgPlatformProtocol
);
- if (!EFI_ERROR (Status)) {
+ if (!EFI_ERROR (Status)) {
+ FHandle = (IMAGE_FILE_HANDLE *) Image->ImageContext.Handle;
Status = TcgPlatformProtocol->MeasurePeImage (
BootPolicy,
- Image->ImageContext.ImageAddress,
- (UINTN) Image->ImageContext.ImageSize,
+ (EFI_PHYSICAL_ADDRESS) (UINTN) FHandle->Source,
+ FHandle->SourceSize,
LinkTimeBase,
Image->ImageContext.ImageType,
Image->Info.DeviceHandle,
Image->Info.FilePath
);
-
+
ASSERT_EFI_ERROR (Status);
}