From d81ed3b7380e53306cba57fa3b412d91ba80823e Mon Sep 17 00:00:00 2001 From: Maarten Lankhorst Date: Wed, 2 Apr 2008 15:01:27 -0700 Subject: [PATCH] dsound: Lock in GetStatus --- dlls/dsound/buffer.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/dlls/dsound/buffer.c b/dlls/dsound/buffer.c index bb08f4a..108636a 100644 --- a/dlls/dsound/buffer.c +++ b/dlls/dsound/buffer.c @@ -465,11 +465,13 @@ static HRESULT WINAPI IDirectSoundBufferImpl_GetStatus( } *status = 0; + RtlAcquireResourceShared(&This->lock, TRUE); if ((This->state == STATE_STARTING) || (This->state == STATE_PLAYING)) { *status |= DSBSTATUS_PLAYING; if (This->playflags & DSBPLAY_LOOPING) *status |= DSBSTATUS_LOOPING; } + RtlReleaseResource(&This->lock); TRACE("status=%x\n", *status); return DS_OK; -- 1.5.4.1