From: hchen30 Date: Tue, 17 Feb 2009 09:13:35 +0000 (+0000) Subject: update code to pass K8. X-Git-Tag: edk2-stable201903~18714 X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=commitdiff_plain;h=309e31222f0359c9a3022bb83709db56ca2f9c72;hp=058bf46eefc3716988077b54975d0d0d5cc3e859 update code to pass K8. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7536 6f19259b-4bc3-4df7-8a09-765794883524 --- diff --git a/MdeModulePkg/Universal/PCD/Dxe/Service.c b/MdeModulePkg/Universal/PCD/Dxe/Service.c index c08ac54b61..64bbe4c799 100644 --- a/MdeModulePkg/Universal/PCD/Dxe/Service.c +++ b/MdeModulePkg/Universal/PCD/Dxe/Service.c @@ -106,8 +106,13 @@ GetWorker ( } PcdDb = IsPeiDb ? ((UINT8 *) &mPcdDatabase->PeiDb) : ((UINT8 *) &mPcdDatabase->DxeDb); - StringTable = (UINT16 *) (IsPeiDb ? mPcdDatabase->PeiDb.Init.StringTable : - mPcdDatabase->DxeDb.Init.StringTable); + + if (IsPeiDb) { + StringTable = (UINT16 *) (&mPcdDatabase->PeiDb.Init.StringTable[0]); + } else { + StringTable = (UINT16 *) (&mPcdDatabase->DxeDb.Init.StringTable[0]); + } + Offset = LocalTokenNumber & PCD_DATABASE_OFFSET_MASK; @@ -118,8 +123,11 @@ GetWorker ( break; case PCD_TYPE_HII: - GuidTable = (EFI_GUID *) (IsPeiDb ? mPcdDatabase->PeiDb.Init.GuidTable : - mPcdDatabase->DxeDb.Init.GuidTable); + if (IsPeiDb) { + GuidTable = (EFI_GUID *) (&mPcdDatabase->PeiDb.Init.GuidTable[0]); + } else { + GuidTable = (EFI_GUID *) (&mPcdDatabase->DxeDb.Init.GuidTable[0]); + } VariableHead = (VARIABLE_HEAD *) (PcdDb + Offset); @@ -761,8 +769,12 @@ SetWorker ( PcdDb = IsPeiDb ? ((UINT8 *) &mPcdDatabase->PeiDb) : ((UINT8 *) &mPcdDatabase->DxeDb); - StringTable = (UINT16*) (IsPeiDb ? mPcdDatabase->PeiDb.Init.StringTable : - mPcdDatabase->DxeDb.Init.StringTable); + if (IsPeiDb) { + StringTable = (UINT16 *) (&mPcdDatabase->PeiDb.Init.StringTable[0]); + } else { + StringTable = (UINT16 *) (&mPcdDatabase->DxeDb.Init.StringTable[0]); + } + InternalData = PcdDb + Offset; @@ -789,8 +801,11 @@ SetWorker ( } } - GuidTable = (EFI_GUID *)(IsPeiDb ? mPcdDatabase->PeiDb.Init.GuidTable : - mPcdDatabase->DxeDb.Init.GuidTable); + if (IsPeiDb) { + GuidTable = (EFI_GUID *) (&mPcdDatabase->PeiDb.Init.GuidTable[0]); + } else { + GuidTable = (EFI_GUID *) (&mPcdDatabase->DxeDb.Init.GuidTable[0]); + } VariableHead = (VARIABLE_HEAD *) (PcdDb + Offset);