winealsa: Use the global lock to lock the session.
Mainly just for simplicity. Signed-off-by: Huw Davies <huw@codeweavers.com> Signed-off-by: Andrew Eikum <aeikum@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
8e13b4bd0c
commit
10d44c9a8a
|
@ -77,8 +77,6 @@ typedef struct _AudioSession {
|
||||||
float *channel_vols;
|
float *channel_vols;
|
||||||
BOOL mute;
|
BOOL mute;
|
||||||
|
|
||||||
CRITICAL_SECTION lock;
|
|
||||||
|
|
||||||
struct list entry;
|
struct list entry;
|
||||||
} AudioSession;
|
} AudioSession;
|
||||||
|
|
||||||
|
@ -748,9 +746,6 @@ static AudioSession *create_session(const GUID *guid, IMMDevice *device,
|
||||||
|
|
||||||
list_add_head(&g_sessions, &ret->entry);
|
list_add_head(&g_sessions, &ret->entry);
|
||||||
|
|
||||||
InitializeCriticalSection(&ret->lock);
|
|
||||||
ret->lock.DebugInfo->Spare[0] = (DWORD_PTR)(__FILE__ ": AudioSession.lock");
|
|
||||||
|
|
||||||
session_init_vols(ret, num_channels);
|
session_init_vols(ret, num_channels);
|
||||||
|
|
||||||
ret->master_vol = 1.f;
|
ret->master_vol = 1.f;
|
||||||
|
@ -3283,11 +3278,11 @@ static HRESULT WINAPI SimpleAudioVolume_SetMasterVolume(
|
||||||
|
|
||||||
TRACE("ALSA does not support volume control\n");
|
TRACE("ALSA does not support volume control\n");
|
||||||
|
|
||||||
EnterCriticalSection(&session->lock);
|
EnterCriticalSection(&g_sessions_lock);
|
||||||
|
|
||||||
session->master_vol = level;
|
session->master_vol = level;
|
||||||
|
|
||||||
LeaveCriticalSection(&session->lock);
|
LeaveCriticalSection(&g_sessions_lock);
|
||||||
|
|
||||||
return S_OK;
|
return S_OK;
|
||||||
}
|
}
|
||||||
|
@ -3573,11 +3568,11 @@ static HRESULT WINAPI ChannelAudioVolume_SetChannelVolume(
|
||||||
|
|
||||||
TRACE("ALSA does not support volume control\n");
|
TRACE("ALSA does not support volume control\n");
|
||||||
|
|
||||||
EnterCriticalSection(&session->lock);
|
EnterCriticalSection(&g_sessions_lock);
|
||||||
|
|
||||||
session->channel_vols[index] = level;
|
session->channel_vols[index] = level;
|
||||||
|
|
||||||
LeaveCriticalSection(&session->lock);
|
LeaveCriticalSection(&g_sessions_lock);
|
||||||
|
|
||||||
return S_OK;
|
return S_OK;
|
||||||
}
|
}
|
||||||
|
@ -3623,12 +3618,12 @@ static HRESULT WINAPI ChannelAudioVolume_SetAllVolumes(
|
||||||
|
|
||||||
TRACE("ALSA does not support volume control\n");
|
TRACE("ALSA does not support volume control\n");
|
||||||
|
|
||||||
EnterCriticalSection(&session->lock);
|
EnterCriticalSection(&g_sessions_lock);
|
||||||
|
|
||||||
for(i = 0; i < count; ++i)
|
for(i = 0; i < count; ++i)
|
||||||
session->channel_vols[i] = levels[i];
|
session->channel_vols[i] = levels[i];
|
||||||
|
|
||||||
LeaveCriticalSection(&session->lock);
|
LeaveCriticalSection(&g_sessions_lock);
|
||||||
|
|
||||||
return S_OK;
|
return S_OK;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue