Module: wine Branch: master Commit: ee94725c8ea49a42130954a49a7c8b2ab3359c3b URL: http://source.winehq.org/git/wine.git/?a=commit;h=ee94725c8ea49a42130954a49a...
Author: Erich E. Hoover erich.e.hoover@gmail.com Date: Thu Jul 17 10:31:17 2014 -0600
quartz: Fix race condition on EndFlush between csRenderLock and filter.csFilter.
---
dlls/quartz/videorenderer.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/dlls/quartz/videorenderer.c b/dlls/quartz/videorenderer.c index 4e8f359..571a19d 100644 --- a/dlls/quartz/videorenderer.c +++ b/dlls/quartz/videorenderer.c @@ -374,11 +374,11 @@ static HRESULT WINAPI VideoRenderer_EndFlush(BaseRenderer* iface) if (This->renderer.pMediaSample) { ResetEvent(This->hEvent); LeaveCriticalSection(iface->pInputPin->pin.pCritSec); - LeaveCriticalSection(&iface->csRenderLock); LeaveCriticalSection(&iface->filter.csFilter); + LeaveCriticalSection(&iface->csRenderLock); WaitForSingleObject(This->hEvent, INFINITE); - EnterCriticalSection(&iface->filter.csFilter); EnterCriticalSection(&iface->csRenderLock); + EnterCriticalSection(&iface->filter.csFilter); EnterCriticalSection(iface->pInputPin->pin.pCritSec); } if (This->renderer.filter.state == State_Paused) {