]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Library/PeiReportStatusCodeLib/ReportStatusCodeLib.c
MdeModulePkg/CapsuleLib: Fix runtime issue
[mirror_edk2.git] / MdeModulePkg / Library / PeiReportStatusCodeLib / ReportStatusCodeLib.c
index 176c7ada4d5d33396eb716025e1a020f49bd3d3f..d41d4e981df326342fe954ba3f723c48a0513b61 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   Instance of Report Status Code Library for PEI Phase.\r
 \r
-  Copyright (c) 2006 - 2009, Intel Corporation. All rights reserved.<BR>\r
+  Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>\r
   This program and the accompanying materials\r
   are licensed and made available under the terms and conditions of the BSD License\r
   which accompanies this distribution.  The full text of the license may be found at\r
@@ -458,7 +458,7 @@ ReportStatusCodeEx (
   )\r
 {\r
   EFI_STATUS_CODE_DATA  *StatusCodeData;\r
-  UINT64                Buffer[MAX_EXTENDED_DATA_SIZE / sizeof (UINT64)];\r
+  UINT64                Buffer[(MAX_EXTENDED_DATA_SIZE / sizeof (UINT64)) + 1];\r
 \r
   //\r
   // If ExtendedData is NULL and ExtendedDataSize is not zero, then ASSERT().\r
@@ -472,9 +472,9 @@ ReportStatusCodeEx (
   if (ExtendedDataSize > (MAX_EXTENDED_DATA_SIZE - sizeof (EFI_STATUS_CODE_DATA))) {\r
     //\r
     // The local variable Buffer not large enough to hold the extended data associated\r
-    // with the status code being  reported.\r
+    // with the status code being reported.\r
     //\r
-    ASSERT (FALSE);\r
+    DEBUG ((EFI_D_ERROR, "Status code extended data is too large to be reported!\n"));\r
     return EFI_OUT_OF_RESOURCES;\r
   }\r
   StatusCodeData = (EFI_STATUS_CODE_DATA  *) Buffer;\r