To avoid leaking memory, we need to call DeleteCriticalSection
for all critical sections once they are no longer needed.
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@2669
ad392aa1-c5ef-ae45-8dd8-
e69d62a5ef86
CloseHandle(m_OverlapWrite.hEvent);\r
}\r
CloseHandle(m_hFile);\r
+ DeleteCriticalSection(&m_CritSecRead);\r
+ DeleteCriticalSection(&m_CritSecWrite);\r
InterlockedDecrement(&WmRef);\r
}\r
\r
if (m_Overlap.hEvent != NULL) {\r
CloseHandle(m_Overlap.hEvent);\r
}\r
+ DeleteCriticalSection(&m_CritSec);\r
}\r
\r
STDMETHODIMP CWVBase::\r
__declspec(dllexport)\r
int umad_done(void)\r
{\r
+ DeleteCriticalSection(&crit_sec);\r
return 0;\r
}\r
\r
m_pWvProvider->Release();\r
}\r
m_pProvider->Release();\r
+ DeleteCriticalSection(&m_Lock);\r
}\r
\r
STDMETHODIMP CNDAdapter::\r