)\r
{\r
TCG_DXE_DATA *TcgData;\r
+ EFI_STATUS Status;\r
\r
if (TCGLogData == NULL || EventLogLastEntry == NULL){\r
return EFI_INVALID_PARAMETER;\r
return EFI_UNSUPPORTED;\r
}\r
\r
- return TcgDxeHashLogExtendEventI (\r
- TcgData,\r
- (UINT8 *) (UINTN) HashData,\r
- HashDataLen,\r
- (TCG_PCR_EVENT_HDR*)TCGLogData,\r
- TCGLogData->Event\r
- );\r
+ Status = TcgDxeHashLogExtendEventI (\r
+ TcgData,\r
+ (UINT8 *) (UINTN) HashData,\r
+ HashDataLen,\r
+ (TCG_PCR_EVENT_HDR*)TCGLogData,\r
+ TCGLogData->Event\r
+ );\r
+\r
+ if (!EFI_ERROR(Status)){\r
+ *EventLogLastEntry = (EFI_PHYSICAL_ADDRESS)(UINTN) TcgData->LastEvent;\r
+ }\r
+\r
+ return Status;\r
}\r
\r
TCG_DXE_DATA mTcgDxeData = {\r