diff options
author | lgao4 <lgao4@6f19259b-4bc3-4df7-8a09-765794883524> | 2010-02-04 09:35:42 +0000 |
---|---|---|
committer | lgao4 <lgao4@6f19259b-4bc3-4df7-8a09-765794883524> | 2010-02-04 09:35:42 +0000 |
commit | 32e9da0c40cef1bc9a8e7701af0ae513a0e1b3fb (patch) | |
tree | 0e41f9c7d1bd528744bccfa11be8cac2289c88e2 /IntelFrameworkModulePkg | |
parent | d60c5b31276420519e3f5ebb46342b610f4973cf (diff) | |
download | edk2-32e9da0c40cef1bc9a8e7701af0ae513a0e1b3fb.tar.gz edk2-32e9da0c40cef1bc9a8e7701af0ae513a0e1b3fb.tar.bz2 edk2-32e9da0c40cef1bc9a8e7701af0ae513a0e1b3fb.zip |
Fix the bug that the wrong classguid is compared.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9930 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'IntelFrameworkModulePkg')
-rw-r--r-- | IntelFrameworkModulePkg/Universal/BdsDxe/DeviceMngr/DeviceManager.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/IntelFrameworkModulePkg/Universal/BdsDxe/DeviceMngr/DeviceManager.c b/IntelFrameworkModulePkg/Universal/BdsDxe/DeviceMngr/DeviceManager.c index 7dbbe85ce8..30be2b59b5 100644 --- a/IntelFrameworkModulePkg/Universal/BdsDxe/DeviceMngr/DeviceManager.c +++ b/IntelFrameworkModulePkg/Universal/BdsDxe/DeviceMngr/DeviceManager.c @@ -298,7 +298,7 @@ ExtractDisplayedHiiFormFromHiiHandle ( //
// Find FormSet OpCode
//
- ClassGuidNum = ((EFI_IFR_FORM_SET *) OpCodeData)->Flags;
+ ClassGuidNum = ((EFI_IFR_FORM_SET *) OpCodeData)->Flags & 0x3;
ClassGuid = (EFI_GUID *) (VOID *)(OpCodeData + sizeof (EFI_IFR_FORM_SET));
while (ClassGuidNum-- > 0) {
if (CompareGuid (SetupClassGuid, ClassGuid)) {
@@ -307,6 +307,7 @@ ExtractDisplayedHiiFormFromHiiHandle ( FreePool (HiiPackageList);
return TRUE;
}
+ ClassGuid ++;
}
} else {
CopyMem (FormSetTitle, &((EFI_IFR_FORM_SET *) OpCodeData)->FormSetTitle, sizeof (EFI_STRING_ID));
|