Module: wine Branch: master Commit: 9b55cc9e6fdd33c4c9a11ea21e0683b0952fe666 URL: http://source.winehq.org/git/wine.git/?a=commit;h=9b55cc9e6fdd33c4c9a11ea21e...
Author: Francois Gouget fgouget@codeweavers.com Date: Mon Nov 7 16:52:40 2011 +0100
winealsa.drv: Delete the g_sessions_lock critical section when unloading the dll.
---
dlls/winealsa.drv/mmdevdrv.c | 11 +++++++++-- 1 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/dlls/winealsa.drv/mmdevdrv.c b/dlls/winealsa.drv/mmdevdrv.c index 25693c0..bc1ca94 100644 --- a/dlls/winealsa.drv/mmdevdrv.c +++ b/dlls/winealsa.drv/mmdevdrv.c @@ -219,12 +219,19 @@ static inline SessionMgr *impl_from_IAudioSessionManager2(IAudioSessionManager2
BOOL WINAPI DllMain(HINSTANCE dll, DWORD reason, void *reserved) { - if(reason == DLL_PROCESS_ATTACH){ + switch (reason) + { + case DLL_PROCESS_ATTACH: g_timer_q = CreateTimerQueue(); if(!g_timer_q) return FALSE; - } + break;
+ case DLL_PROCESS_DETACH: + g_sessions_lock.DebugInfo->Spare[0] = 0; + DeleteCriticalSection(&g_sessions_lock); + break; + } return TRUE; }