Module: wine Branch: master Commit: 47425a5801e7972e5e78e3561db0c37f02008e6a URL: http://source.winehq.org/git/wine.git/?a=commit;h=47425a5801e7972e5e78e3561d...
Author: Erich E. Hoover erich.e.hoover@gmail.com Date: Thu Jul 17 10:35:43 2014 -0600
strmbase: Fix race condition on InputPin_EndFlush between csRenderLock and filter.csFilter.
---
dlls/strmbase/renderer.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/dlls/strmbase/renderer.c b/dlls/strmbase/renderer.c index 3acca0f..9b9c225 100644 --- a/dlls/strmbase/renderer.c +++ b/dlls/strmbase/renderer.c @@ -155,8 +155,8 @@ static HRESULT WINAPI BaseRenderer_InputPin_EndFlush(IPin * iface)
TRACE("(%p/%p)->()\n", This, pFilter);
- EnterCriticalSection(&pFilter->filter.csFilter); EnterCriticalSection(&pFilter->csRenderLock); + EnterCriticalSection(&pFilter->filter.csFilter); EnterCriticalSection(This->pin.pCritSec); hr = BaseInputPinImpl_EndFlush(iface); if (SUCCEEDED(hr)) @@ -167,8 +167,8 @@ static HRESULT WINAPI BaseRenderer_InputPin_EndFlush(IPin * iface) hr = BaseRendererImpl_EndFlush(pFilter); } LeaveCriticalSection(This->pin.pCritSec); - LeaveCriticalSection(&pFilter->csRenderLock); LeaveCriticalSection(&pFilter->filter.csFilter); + LeaveCriticalSection(&pFilter->csRenderLock); return hr; }