]> git.proxmox.com Git - mirror_edk2.git/commit - MdeModulePkg/Core/Dxe/Event/Event.c
MdeModulePkg DxeCore: Avoid the closed event to be signaled wrongly
authorStar Zeng <star.zeng@intel.com>
Wed, 27 Jan 2016 10:15:15 +0000 (10:15 +0000)
committerlzeng14 <lzeng14@Edk2>
Wed, 27 Jan 2016 10:15:15 +0000 (10:15 +0000)
commit1a4acc11360a89ada7cda08d4b4757855bbc4f16
tree7b12acb5a68e1e90fca1ba3cb2fb18b062674ef9
parent5955601cdf1ee2e9bb8a977c3cefb2d9a110797d
MdeModulePkg DxeCore: Avoid the closed event to be signaled wrongly

Signal a closed event will still invoke the event notification function,
it could only be exposed when no the DEBUG_PROPERTY_CLEAR_MEMORY_ENABLED
bit set in PcdDebugPropertyMask.

For example:
  gBS->CreateEvent (
                EVT_NOTIFY_SIGNAL,
                TPL_CALLBACK,
                CallbackFun,
                NULL,
                &Event
                );
  gBS->CloseEvent (Event);
  gBS->SignalEvent (Event);      <- CallbackFun still be invoked

Although the case to signal a closed event is abnormal, the code could
still be enhanced to avoid it.

Cc: Liming Gao <liming.gao@intel.com>
Cc: Feng Tian <feng.tian@intel.com>
Cc: Thomas Palmer <thomas.palmer@hpe.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19754 6f19259b-4bc3-4df7-8a09-765794883524
MdeModulePkg/Core/Dxe/Event/Event.c