quartz: End the flush downstream first before restarting playback in pullpin.

This commit is contained in:
Maarten Lankhorst 2008-07-10 14:32:58 -07:00 committed by Alexandre Julliard
parent 6129e92e99
commit 484fdcf7e4
1 changed files with 5 additions and 4 deletions

View File

@ -1783,6 +1783,11 @@ HRESULT WINAPI PullPin_EndFlush(IPin * iface)
TRACE("(%p)->()\n", iface);
/* Send further first: Else a race condition might terminate processing early */
EnterCriticalSection(This->pin.pCritSec);
SendFurther( iface, deliver_endflush, NULL, NULL );
LeaveCriticalSection(This->pin.pCritSec);
EnterCriticalSection(&This->thread_lock);
{
FILTER_STATE state;
@ -1795,10 +1800,6 @@ HRESULT WINAPI PullPin_EndFlush(IPin * iface)
}
LeaveCriticalSection(&This->thread_lock);
EnterCriticalSection(This->pin.pCritSec);
SendFurther( iface, deliver_endflush, NULL, NULL );
LeaveCriticalSection(This->pin.pCritSec);
return S_OK;
}