]> git.proxmox.com Git - mirror_edk2.git/commitdiff
SourceLevelDebugPkg: Avoid NULL pointer reference.
authorJeff Fan <jeff.fan@intel.com>
Wed, 15 Apr 2015 06:55:12 +0000 (06:55 +0000)
committervanjeff <vanjeff@Edk2>
Wed, 15 Apr 2015 06:55:12 +0000 (06:55 +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@17183 6f19259b-4bc3-4df7-8a09-765794883524

SourceLevelDebugPkg/Library/DebugAgent/SecPeiDebugAgent/SecPeiDebugAgentLib.c

index ec389c7e8b9d0d9b4d5ea986ce7482c1e14a2612..f71ddadb1a1b78d6767a91e393bd77da43bd2b83 100644 (file)
@@ -525,22 +525,23 @@ InitializeDebugAgent (
     if (Mailbox == NULL) {\r
       DEBUG ((EFI_D_ERROR, "DebugAgent: Failed to allocate memory!\n"));\r
       CpuDeadLoop ();\r
+    } else {\r
+      MailboxLocation = (UINT64)(UINTN)Mailbox;\r
+      MailboxLocationPointer = BuildGuidDataHob (\r
+                                 &gEfiDebugAgentGuid,\r
+                                 &MailboxLocation,\r
+                                 sizeof (UINT64)\r
+                                 );\r
+      //\r
+      // Initialize Debug Timer hardware and save its frequency\r
+      //\r
+      InitializeDebugTimer (&DebugTimerFrequency);\r
+      UpdateMailboxContent (Mailbox, DEBUG_MAILBOX_DEBUG_TIMER_FREQUENCY, DebugTimerFrequency);\r
+      //\r
+      // Update IDT entry to save the location pointer saved mailbox pointer\r
+      //\r
+      SetLocationSavedMailboxPointerInIdtEntry (MailboxLocationPointer);\r
     }\r
-    MailboxLocation = (UINT64)(UINTN)Mailbox;\r
-    MailboxLocationPointer = BuildGuidDataHob (\r
-                               &gEfiDebugAgentGuid,\r
-                               &MailboxLocation,\r
-                               sizeof (UINT64)\r
-                               );\r
-    //\r
-    // Initialize Debug Timer hardware and save its frequency\r
-    //\r
-    InitializeDebugTimer (&DebugTimerFrequency);\r
-    UpdateMailboxContent (Mailbox, DEBUG_MAILBOX_DEBUG_TIMER_FREQUENCY, DebugTimerFrequency);\r
-    //\r
-    // Update IDT entry to save the location pointer saved mailbox pointer\r
-    //\r
-    SetLocationSavedMailboxPointerInIdtEntry (MailboxLocationPointer);\r
     //\r
     // Save init arch type when debug agent initialized\r
     //\r