From de117c1eb54488f839a790d5901ae34c3063dfd3 Mon Sep 17 00:00:00 2001 From: Maarten Lankhorst Date: Mon, 7 Apr 2008 22:30:30 -0700 Subject: [PATCH] quartz: Make the DirectSound renderer return S_FALSE packet if in the paused state. --- dlls/quartz/dsoundrender.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/dlls/quartz/dsoundrender.c b/dlls/quartz/dsoundrender.c index e65ae126161..290e02e7f24 100644 --- a/dlls/quartz/dsoundrender.c +++ b/dlls/quartz/dsoundrender.c @@ -231,6 +231,9 @@ static HRESULT DSoundRender_Sample(LPVOID iface, IMediaSample * pSample) TRACE("%p %p\n", iface, pSample); + if (This->state == State_Paused) + return S_FALSE; + if (This->state == State_Stopped) return VFW_E_WRONG_STATE; @@ -804,9 +807,9 @@ static HRESULT WINAPI DSoundRender_InputPin_BeginFlush(IPin * iface) DSoundRenderImpl *pFilter = (DSoundRenderImpl *)This->pin.pinInfo.pFilter; HRESULT hr; + TRACE("\n"); hr = InputPin_BeginFlush(iface); - FIXME("Requested flush\n"); EnterCriticalSection(This->pin.pCritSec); if (pFilter->dsbuffer) IDirectSoundBuffer_Stop(pFilter->dsbuffer);