// Module Globals\r
//\r
\r
-SPIN_LOCK mUnloadImageLock;\r
-\r
LOADED_IMAGE_PRIVATE_DATA *mCurrentImage = NULL;\r
\r
LOAD_PE32_IMAGE_PRIVATE_DATA mLoadPe32PrivateData = {\r
\r
mCurrentImage = Image;\r
\r
- //\r
- // Initialize spin lock\r
- //\r
- InitializeSpinLock (&mUnloadImageLock);\r
-\r
//\r
// Fill in DXE globals\r
//\r
EFI_STATUS Status;\r
LOADED_IMAGE_PRIVATE_DATA *Image;\r
\r
- //\r
- // Prevent possible reentrance to this function\r
- // for the same ImageHandle\r
- //\r
- if (!AcquireSpinLockOrFail (&mUnloadImageLock)) {\r
- return EFI_UNSUPPORTED;\r
- }\r
-\r
Image = CoreLoadedImageInfo (ImageHandle);\r
if (Image == NULL ) {\r
//\r
}\r
\r
Done:\r
- ReleaseSpinLock (&mUnloadImageLock);\r
return Status;\r
}\r
\r