From: niruiyu Date: Wed, 21 Apr 2010 02:41:15 +0000 (+0000) Subject: Fix a bug that FV->ReadSection cannot get the EFI_SECTION_GUID_DEFINED type section... X-Git-Tag: edk2-stable201903~15957 X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=commitdiff_plain;h=5efb9132d344f2393268a608f4f9737654774339 Fix a bug that FV->ReadSection cannot get the EFI_SECTION_GUID_DEFINED type section data. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10385 6f19259b-4bc3-4df7-8a09-765794883524 --- diff --git a/IntelFrameworkModulePkg/Universal/SectionExtractionDxe/SectionExtraction.c b/IntelFrameworkModulePkg/Universal/SectionExtractionDxe/SectionExtraction.c index 6bab4db1f0..5d3bb50da7 100644 --- a/IntelFrameworkModulePkg/Universal/SectionExtractionDxe/SectionExtraction.c +++ b/IntelFrameworkModulePkg/Universal/SectionExtractionDxe/SectionExtraction.c @@ -327,7 +327,7 @@ OpenSectionStreamEx ( ) { FRAMEWORK_SECTION_STREAM_NODE *NewStream; - EFI_TPL OldTpl; + EFI_TPL OldTpl; // // Allocate a new stream @@ -446,8 +446,8 @@ BOOLEAN ChildIsType ( IN FRAMEWORK_SECTION_STREAM_NODE *Stream, IN FRAMEWORK_SECTION_CHILD_NODE *Child, - IN EFI_SECTION_TYPE SearchType, - IN EFI_GUID *SectionDefinitionGuid + IN EFI_SECTION_TYPE SearchType, + IN EFI_GUID *SectionDefinitionGuid ) { EFI_GUID_DEFINED_SECTION *GuidedSection; @@ -458,7 +458,7 @@ ChildIsType ( if (Child->Type != SearchType) { return FALSE; } - if (SearchType != EFI_SECTION_GUID_DEFINED) { + if ((SearchType != EFI_SECTION_GUID_DEFINED) || (SectionDefinitionGuid == NULL)) { return TRUE; } GuidedSection = (EFI_GUID_DEFINED_SECTION * )(Stream->StreamBuffer + Child->OffsetInStream); @@ -1155,11 +1155,11 @@ GetSection ( OUT UINT32 *AuthenticationStatus ) { - FRAMEWORK_SECTION_STREAM_NODE *StreamNode; + FRAMEWORK_SECTION_STREAM_NODE *StreamNode; EFI_TPL OldTpl; EFI_STATUS Status; - FRAMEWORK_SECTION_CHILD_NODE *ChildNode; - FRAMEWORK_SECTION_STREAM_NODE *ChildStreamNode; + FRAMEWORK_SECTION_CHILD_NODE *ChildNode; + FRAMEWORK_SECTION_STREAM_NODE *ChildStreamNode; UINTN CopySize; UINT32 ExtractedAuthenticationStatus; UINTN Instance;