From 04eb20aa85f658b86dd8b6b4fc261d2c9ff2e6a3 Mon Sep 17 00:00:00 2001 From: ydong10 Date: Thu, 29 Sep 2011 06:33:23 +0000 Subject: Add pointer check for NULL before dereference it. Signed-off-by: ydong10 Reviewed-by: rsun3, lgao4 git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12472 6f19259b-4bc3-4df7-8a09-765794883524 --- MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariable.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'MdeModulePkg/Universal/Variable') diff --git a/MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariable.c b/MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariable.c index d36254cc67..df42eda670 100644 --- a/MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariable.c +++ b/MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariable.c @@ -1177,6 +1177,7 @@ EmuGetVariable ( VARIABLE_POINTER_TRACK Variable; UINTN VarDataSize; EFI_STATUS Status; + UINT8 *VariableDataPtr; if (VariableName == NULL || VendorGuid == NULL || DataSize == NULL) { return EFI_INVALID_PARAMETER; @@ -1201,8 +1202,10 @@ EmuGetVariable ( Status = EFI_INVALID_PARAMETER; goto Done; } - - CopyMem (Data, GetVariableDataPtr (Variable.CurrPtr), VarDataSize); + VariableDataPtr = GetVariableDataPtr (Variable.CurrPtr); + ASSERT (VariableDataPtr != NULL); + + CopyMem (Data, VariableDataPtr, VarDataSize); if (Attributes != NULL) { *Attributes = Variable.CurrPtr->Attributes; } -- cgit v1.2.3