Retire the constructor to reduce the possibility of circular library dependency.
authoryshang1 <yshang1@de2fecce-e211-0410-80a6-f3fac2684e05>
Mon, 4 Feb 2008 03:36:06 +0000 (03:36 +0000)
committeryshang1 <yshang1@de2fecce-e211-0410-80a6-f3fac2684e05>
Mon, 4 Feb 2008 03:36:06 +0000 (03:36 +0000)
git-svn-id: https://edk2.tianocore.org/svn/edk2/trunk@4668 de2fecce-e211-0410-80a6-f3fac2684e05

edk2/IntelFrameworkModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
edk2/IntelFrameworkModulePkg/Library/PeiReportStatusCodeLib/ReportStatusCodeLib.c

index aeee6c1..4750715 100644 (file)
@@ -24,8 +24,6 @@
   EDK_RELEASE_VERSION            = 0x00020000\r
   EFI_SPECIFICATION_VERSION      = 0x00020000\r
 \r
-  CONSTRUCTOR                    = PeiReportStatusCodeLibConstructor\r
-\r
 \r
 #\r
 # The following information is for reference only and not required by the build tools.\r
index c79d93e..89224da 100644 (file)
 //\r
 #define MAX_EXTENDED_DATA_SIZE  0x200\r
 \r
-\r
-/**\r
-  The constructor function initializes the OEM hooked status\r
-  code device.\r
-  \r
-  @param  FfsHeader   Pointer to FFS header the loaded driver.\r
-  @param  PeiServices Pointer to the PEI services.\r
-\r
-  @return  Status of initialization of OEM hook status code\r
-           device.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-PeiReportStatusCodeLibConstructor (\r
-  IN EFI_PEI_FILE_HANDLE  FileHandle,\r
-  IN EFI_PEI_SERVICES     **PeiServices\r
-  )\r
-{\r
-  return OemHookStatusCodeInitialize ();\r
-}\r
-\r
-\r
 /**\r
   Internal worker function that reports a status code through the Status Code Protocol\r
 \r
@@ -101,7 +78,10 @@ InternalReportStatusCode (
                              Data\r
                              );\r
   if (Status == EFI_NOT_AVAILABLE_YET) {\r
-    return OemHookStatusCodeReport (Type, Value, Instance, (EFI_GUID *) CallerId, Data);\r
+    Status = OemHookStatusCodeInitialize ();\r
+    if (!EFI_ERROR (Status)) {\r
+      return OemHookStatusCodeReport (Type, Value, Instance, (EFI_GUID *) CallerId, Data);\r
+    }\r
   }\r
   return Status;\r
 }\r