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
// If size of data changes, allocate pool and copy data.\r
//\r
Entry->Data = AllocatePool (DataSize);\r
// If size of data changes, allocate pool and copy data.\r
//\r
Entry->Data = AllocatePool (DataSize);\r
+ ASSERT (Entry->Data != NULL);\r
Entry->DataSize = DataSize;\r
CopyMem (Entry->Data, Data, DataSize);\r
}\r
Entry->DataSize = DataSize;\r
CopyMem (Entry->Data, Data, DataSize);\r
}\r
NextVariable->MonotonicCount = MonotonicCount;\r
SetMem (&NextVariable->TimeStamp, sizeof (EFI_TIME), 0);\r
\r
NextVariable->MonotonicCount = MonotonicCount;\r
SetMem (&NextVariable->TimeStamp, sizeof (EFI_TIME), 0);\r
\r
- if (((Attributes & EFI_VARIABLE_APPEND_WRITE) == 0) && \r
- ((Attributes & EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS) != 0)) {\r
- CopyMem (&NextVariable->TimeStamp, TimeStamp, sizeof (EFI_TIME));\r
- } else if (\r
- ((Attributes & EFI_VARIABLE_APPEND_WRITE) != 0) && \r
- ((Attributes & EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS) != 0)) {\r
+ if (((Attributes & EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS) != 0) &&\r
+ TimeStamp != NULL) {\r
+ if ((Attributes & EFI_VARIABLE_APPEND_WRITE) == 0) {\r
+ CopyMem (&NextVariable->TimeStamp, TimeStamp, sizeof (EFI_TIME));\r
+ } else {\r
//\r
// In the case when the EFI_VARIABLE_APPEND_WRITE attribute is set, only\r
// when the new TimeStamp value is later than the current timestamp associated\r
//\r
// In the case when the EFI_VARIABLE_APPEND_WRITE attribute is set, only\r
// when the new TimeStamp value is later than the current timestamp associated\r
if (CompareTimeStamp (&Variable->CurrPtr->TimeStamp, TimeStamp)) {\r
CopyMem (&NextVariable->TimeStamp, TimeStamp, sizeof (EFI_TIME));\r
}\r
if (CompareTimeStamp (&Variable->CurrPtr->TimeStamp, TimeStamp)) {\r
CopyMem (&NextVariable->TimeStamp, TimeStamp, sizeof (EFI_TIME));\r
}\r