[PATCH 2/8] winealsa: Use the global lock to lock the session.
Andrew Eikum
aeikum at codeweavers.com
Thu Feb 17 09:25:14 CST 2022
Signed-off-by: Andrew Eikum <aeikum at codeweavers.com>
On Wed, Feb 16, 2022 at 09:34:48AM +0000, Huw Davies wrote:
> Mainly just for simplicity.
>
> Signed-off-by: Huw Davies <huw at codeweavers.com>
> ---
> dlls/winealsa.drv/mmdevdrv.c | 17 ++++++-----------
> 1 file changed, 6 insertions(+), 11 deletions(-)
>
> diff --git a/dlls/winealsa.drv/mmdevdrv.c b/dlls/winealsa.drv/mmdevdrv.c
> index abec9dc969a..0549752dc3f 100644
> --- a/dlls/winealsa.drv/mmdevdrv.c
> +++ b/dlls/winealsa.drv/mmdevdrv.c
> @@ -77,8 +77,6 @@ typedef struct _AudioSession {
> float *channel_vols;
> BOOL mute;
>
> - CRITICAL_SECTION lock;
> -
> struct list entry;
> } AudioSession;
>
> @@ -748,9 +746,6 @@ static AudioSession *create_session(const GUID *guid, IMMDevice *device,
>
> 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);
>
> ret->master_vol = 1.f;
> @@ -3283,11 +3278,11 @@ static HRESULT WINAPI SimpleAudioVolume_SetMasterVolume(
>
> TRACE("ALSA does not support volume control\n");
>
> - EnterCriticalSection(&session->lock);
> + EnterCriticalSection(&g_sessions_lock);
>
> session->master_vol = level;
>
> - LeaveCriticalSection(&session->lock);
> + LeaveCriticalSection(&g_sessions_lock);
>
> return S_OK;
> }
> @@ -3573,11 +3568,11 @@ static HRESULT WINAPI ChannelAudioVolume_SetChannelVolume(
>
> TRACE("ALSA does not support volume control\n");
>
> - EnterCriticalSection(&session->lock);
> + EnterCriticalSection(&g_sessions_lock);
>
> session->channel_vols[index] = level;
>
> - LeaveCriticalSection(&session->lock);
> + LeaveCriticalSection(&g_sessions_lock);
>
> return S_OK;
> }
> @@ -3623,12 +3618,12 @@ static HRESULT WINAPI ChannelAudioVolume_SetAllVolumes(
>
> TRACE("ALSA does not support volume control\n");
>
> - EnterCriticalSection(&session->lock);
> + EnterCriticalSection(&g_sessions_lock);
>
> for(i = 0; i < count; ++i)
> session->channel_vols[i] = levels[i];
>
> - LeaveCriticalSection(&session->lock);
> + LeaveCriticalSection(&g_sessions_lock);
>
> return S_OK;
> }
> --
> 2.25.1
>
>
More information about the wine-devel
mailing list