summaryrefslogtreecommitdiff
path: root/MdeModulePkg/Universal/Variable/Pei/Variable.c
diff options
context:
space:
mode:
Diffstat (limited to 'MdeModulePkg/Universal/Variable/Pei/Variable.c')
-rw-r--r--MdeModulePkg/Universal/Variable/Pei/Variable.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/MdeModulePkg/Universal/Variable/Pei/Variable.c b/MdeModulePkg/Universal/Variable/Pei/Variable.c
index f98d236443..7f4b4f68d7 100644
--- a/MdeModulePkg/Universal/Variable/Pei/Variable.c
+++ b/MdeModulePkg/Universal/Variable/Pei/Variable.c
@@ -268,7 +268,8 @@ GetVariableStoreStatus (
IN VARIABLE_STORE_HEADER *VarStoreHeader
)
{
- if (VarStoreHeader->Signature == VARIABLE_STORE_SIGNATURE &&
+
+ if (CompareGuid (&VarStoreHeader->Signature, &gEfiVariableGuid) &&
VarStoreHeader->Format == VARIABLE_STORE_FORMATTED &&
VarStoreHeader->State == VARIABLE_STORE_HEALTHY
) {
@@ -276,7 +277,10 @@ GetVariableStoreStatus (
return EfiValid;
}
- if (VarStoreHeader->Signature == 0xffffffff &&
+ if (((UINT32 *)(&VarStoreHeader->Signature))[0] == 0xffffffff &&
+ ((UINT32 *)(&VarStoreHeader->Signature))[1] == 0xffffffff &&
+ ((UINT32 *)(&VarStoreHeader->Signature))[2] == 0xffffffff &&
+ ((UINT32 *)(&VarStoreHeader->Signature))[3] == 0xffffffff &&
VarStoreHeader->Size == 0xffffffff &&
VarStoreHeader->Format == 0xff &&
VarStoreHeader->State == 0xff