diff options
author | Erik Sohns <eriksohns@fastmail.net> | 2015-12-02 14:53:29 +0100 |
---|---|---|
committer | Erik Sohns <eriksohns@fastmail.net> | 2015-12-02 14:53:29 +0100 |
commit | de13b795434877ad71f77a74180c2a01141083b2 (patch) | |
tree | 72dad2c21032dc861fb46fd4209da8211388c075 | |
parent | aeb68c0179483af8fb44fedf88c94549aaff3210 (diff) | |
download | ATCD-de13b795434877ad71f77a74180c2a01141083b2.tar.gz |
fix potential memory leak when using the Win32 Proactor (part1)
-rw-r--r-- | ACE/ace/WIN32_Proactor.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/ACE/ace/WIN32_Proactor.cpp b/ACE/ace/WIN32_Proactor.cpp index 25bf4f31b32..c593398cc26 100644 --- a/ACE/ace/WIN32_Proactor.cpp +++ b/ACE/ace/WIN32_Proactor.cpp @@ -636,6 +636,12 @@ ACE_WIN32_Proactor::application_specific_code (ACE_WIN32_Asynch_Result *asynch_r const void *completion_key, u_long error) { + // *NOTE*: on Win32 with MSVC (ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS set), this + // needs to be compiled with '/EHa' to work properly, otherwise + // 'finally' is skipped, leaking memory + // *TODO*: the default (auto-)generated MPC MSVC project files do not enforce + // this (uses '/EHsc', see $MPC_ROOT/templates/nmakedll.mpt:36) + // *WORKAROUND*: #undef(ine) ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS in config.h ACE_SEH_TRY { // Call completion hook |