summaryrefslogtreecommitdiff
path: root/MdeModulePkg/Core/DxeIplPeim/DxeLoad.c
diff options
context:
space:
mode:
authorqwang12 <qwang12@6f19259b-4bc3-4df7-8a09-765794883524>2007-08-13 03:10:28 +0000
committerqwang12 <qwang12@6f19259b-4bc3-4df7-8a09-765794883524>2007-08-13 03:10:28 +0000
commitd156c2a8a20eb17383cfd7db557db78e48c67791 (patch)
treedd5bbe4e65d3e2aeab454774644951886f47c0e9 /MdeModulePkg/Core/DxeIplPeim/DxeLoad.c
parent98d80c1807947ef3e2cc69cd5d12e2594ac2eb53 (diff)
downloadedk2-platforms-d156c2a8a20eb17383cfd7db557db78e48c67791.tar.xz
Change the behavior of DxeIplLoadFile to load EFI_SECTION_TE first. If failed, LOAD EFI_SECTION_PE32. For our implementation, some PEIM who require to shadow itself is in TE format.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3618 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'MdeModulePkg/Core/DxeIplPeim/DxeLoad.c')
-rw-r--r--MdeModulePkg/Core/DxeIplPeim/DxeLoad.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/MdeModulePkg/Core/DxeIplPeim/DxeLoad.c b/MdeModulePkg/Core/DxeIplPeim/DxeLoad.c
index 901b061973..7ec7d52039 100644
--- a/MdeModulePkg/Core/DxeIplPeim/DxeLoad.c
+++ b/MdeModulePkg/Core/DxeIplPeim/DxeLoad.c
@@ -593,15 +593,23 @@ Returns:
// Preprocess the FFS file to get a pointer to the PE32 information
// in the enclosed PE32 image.
//
- Status = PeiProcessFile (
- EFI_SECTION_PE32,
+ Status = PeiProcessFile (
+ EFI_SECTION_TE,
FfsHeader,
&Pe32Data,
NULL
);
-
if (EFI_ERROR (Status)) {
- return Status;
+ Status = PeiProcessFile (
+ EFI_SECTION_PE32,
+ FfsHeader,
+ &Pe32Data,
+ NULL
+ );
+
+ if (EFI_ERROR (Status)) {
+ return Status;
+ }
}
//
// Load the PE image from the FFS file