]> git.proxmox.com Git - mirror_edk2.git/commitdiff
SourceLevelDebugPkg: Fix calculate the checksum bug and add NULL pointer check
authorJeff Fan <jeff.fan@intel.com>
Fri, 10 Apr 2015 08:52:48 +0000 (08:52 +0000)
committervanjeff <vanjeff@Edk2>
Fri, 10 Apr 2015 08:52:48 +0000 (08:52 +0000)
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jeff Fan <jeff.fan@intel.com>
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17160 6f19259b-4bc3-4df7-8a09-765794883524

SourceLevelDebugPkg/Library/DebugAgent/DebugAgentCommon/DebugAgent.c
SourceLevelDebugPkg/Library/DebugAgent/SecPeiDebugAgent/SecPeiDebugAgentLib.c

index fc40112b54e9285fe7e381f918ed24d2a4073023..42b73f60ea0029bed59a6ff633c27bed01c1fb82 100644 (file)
@@ -381,7 +381,7 @@ UpdateMailboxContent (
     Mailbox->HostSequenceNo = (UINT8) Value;\r
     break;\r
   case DEBUG_MAILBOX_DEBUG_TIMER_FREQUENCY:\r
-    Mailbox->ToBeCheckSum = Mailbox->CheckSum + CalculateSum8 ((UINT8 *)&Mailbox->HostSequenceNo, sizeof(UINT32))\r
+    Mailbox->ToBeCheckSum = Mailbox->CheckSum + CalculateSum8 ((UINT8 *)&Mailbox->DebugTimerFrequency, sizeof(UINT32))\r
                                               - CalculateSum8 ((UINT8 *)&Value, sizeof(UINT32));\r
     Mailbox->DebugTimerFrequency = (UINT32) Value;\r
     break;\r
index b718e82e2094c748e8f60c8c11892b31d3d68d69..ec389c7e8b9d0d9b4d5ea986ce7482c1e14a2612 100644 (file)
@@ -522,6 +522,10 @@ InitializeDebugAgent (
     // Build mailbox in HOB and setup Mailbox Set In Pei flag\r
     //\r
     Mailbox = AllocateZeroPool (sizeof (DEBUG_AGENT_MAILBOX));\r
+    if (Mailbox == NULL) {\r
+      DEBUG ((EFI_D_ERROR, "DebugAgent: Failed to allocate memory!\n"));\r
+      CpuDeadLoop ();\r
+    }\r
     MailboxLocation = (UINT64)(UINTN)Mailbox;\r
     MailboxLocationPointer = BuildGuidDataHob (\r
                                &gEfiDebugAgentGuid,\r