Add pointer check for NULL before dereference it.

Signed-off-by: sfu5
Reviewed-by: tye

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12537 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
sfu5 2011-10-14 05:19:25 +00:00
parent cf6a8f1453
commit 3b4151bcb4
2 changed files with 7 additions and 6 deletions

View File

@ -846,6 +846,7 @@ UpdateVariableCache (
// If size of data changes, allocate pool and copy data.
//
Entry->Data = AllocatePool (DataSize);
ASSERT (Entry->Data != NULL);
Entry->DataSize = DataSize;
CopyMem (Entry->Data, Data, DataSize);
}

View File

@ -1591,12 +1591,11 @@ UpdateVariable (
NextVariable->MonotonicCount = MonotonicCount;
SetMem (&NextVariable->TimeStamp, sizeof (EFI_TIME), 0);
if (((Attributes & EFI_VARIABLE_APPEND_WRITE) == 0) &&
((Attributes & EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS) != 0)) {
CopyMem (&NextVariable->TimeStamp, TimeStamp, sizeof (EFI_TIME));
} else if (
((Attributes & EFI_VARIABLE_APPEND_WRITE) != 0) &&
((Attributes & EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS) != 0)) {
if (((Attributes & EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS) != 0) &&
TimeStamp != NULL) {
if ((Attributes & EFI_VARIABLE_APPEND_WRITE) == 0) {
CopyMem (&NextVariable->TimeStamp, TimeStamp, sizeof (EFI_TIME));
} else {
//
// In the case when the EFI_VARIABLE_APPEND_WRITE attribute is set, only
// when the new TimeStamp value is later than the current timestamp associated
@ -1605,6 +1604,7 @@ UpdateVariable (
if (CompareTimeStamp (&Variable->CurrPtr->TimeStamp, TimeStamp)) {
CopyMem (&NextVariable->TimeStamp, TimeStamp, sizeof (EFI_TIME));
}
}
}
//