]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Nt32Pkg/Library/DxeNt32PeCoffExtraActionLib/DxeNt32PeCoffExtraActionLib.c
Fix ICC compatibility issues
[mirror_edk2.git] / Nt32Pkg / Library / DxeNt32PeCoffExtraActionLib / DxeNt32PeCoffExtraActionLib.c
index ff5028d4a845b25c7325ca6874ee3b5848e0d0b9..0991fc6b96653be3e491af91b2003bfe15fc3ae2 100644 (file)
@@ -25,7 +25,6 @@ Abstract:
 // The package level header files this module uses\r
 //\r
 #include <FrameworkDxe.h>\r
-#include <FrameworkModuleDxe.h>\r
 #include <WinNtDxe.h>\r
 \r
 //\r
@@ -160,6 +159,7 @@ AddModHandle (
   PDB_NAME_TO_MOD_HANDLE  *Array;\r
   UINTN                   PreviousSize;\r
   PDB_NAME_TO_MOD_HANDLE  *TempArray;\r
+  HANDLE                  Handle;\r
 \r
   Array = mPdbNameModHandleArray;\r
   for (Index = 0; Index < mPdbNameModHandleArraySize; Index++, Array++) {\r
@@ -167,7 +167,8 @@ AddModHandle (
       //\r
       // Make a copy of the stirng and store the ModHandle\r
       //\r
-      Array->PdbPointer = mWinNt->HeapAlloc ( mWinNt->GetProcessHeap (),\r
+      Handle = mWinNt->GetProcessHeap ();\r
+      Array->PdbPointer = mWinNt->HeapAlloc ( Handle,\r
                                 HEAP_ZERO_MEMORY,\r
                                 AsciiStrLen (ImageContext->PdbPointer) + 1\r
                                ); \r
@@ -250,15 +251,14 @@ RemoveModeHandle (
 }\r
 \r
 /**\r
-  Applies additional actions to relocate fixups to a PE/COFF image.\r
+  Performs additional actions after a PE/COFF image has been loaded and relocated.\r
 \r
-  Generally this function is called after sucessfully Applying relocation fixups \r
-  to a PE/COFF image for some specicial purpose. \r
-  As a example, For NT32 emulator, the function should be implemented and called\r
-  to support source level debug.  \r
-  \r
-  @param  ImageContext        Pointer to the image context structure that describes the PE/COFF\r
-                              image that is being relocated.\r
+  For NT32, this function load symbols to support source level debugging.\r
+\r
+  If ImageContext is NULL, then ASSERT().\r
+\r
+  @param  ImageContext  Pointer to the image context structure that describes the\r
+                        PE/COFF image that has already been loaded and relocated.\r
 \r
 **/\r
 VOID\r
@@ -271,7 +271,9 @@ PeCoffLoaderRelocateImageExtraAction (
   CHAR16            *DllFileName;\r
   HMODULE           Library;\r
   UINTN             Index;\r
-  \r
+\r
+  ASSERT (ImageContext != NULL);\r
+\r
        //\r
   // If we load our own PE COFF images the Windows debugger can not source\r
   //  level debug our code. If a valid PDB pointer exists usw it to load\r
@@ -351,17 +353,15 @@ PeCoffLoaderRelocateImageExtraAction (
 }  \r
 \r
 /**\r
-  Unloads a loaded PE/COFF image from memory and releases its taken resource.\r
-  \r
-  Releases any environment specific resources that were allocated when the image \r
-  specified by ImageContext was loaded using PeCoffLoaderLoadImage(). \r
-  For NT32 emulator, the PE/COFF image loaded by system needs to release.\r
-  For real platform, the PE/COFF image loaded by Core doesn't needs to be unloaded, \r
+  Performs additional actions just before a PE/COFF image is unloaded.  Any resources\r
+  that were allocated by PeCoffLoaderRelocateImageExtraAction() must be freed.\r
   \r
+  For NT32, this function unloads symbols for source level debugging.\r
+\r
   If ImageContext is NULL, then ASSERT().\r
   \r
-  @param  ImageContext              Pointer to the image context structure that describes the PE/COFF\r
-                                    image to be unloaded.\r
+  @param  ImageContext  Pointer to the image context structure that describes the\r
+                        PE/COFF image that is being unloaded.\r
 \r
 **/\r
 VOID\r
@@ -372,6 +372,8 @@ PeCoffLoaderUnloadImageExtraAction (
 {\r
        VOID *ModHandle;\r
 \r
+  ASSERT (ImageContext != NULL);\r
+\r
   ModHandle = RemoveModeHandle (ImageContext);\r
   if (ModHandle != NULL) {\r
     mWinNt->FreeLibrary (ModHandle);\r