quartz: Always update time when Run is called.

This commit is contained in:
Maarten Lankhorst 2010-12-06 14:16:42 +01:00 committed by Alexandre Julliard
parent 804a9d14c9
commit ab7986390a
3 changed files with 3 additions and 4 deletions

View File

@ -345,11 +345,11 @@ static HRESULT WINAPI NullRenderer_Run(IBaseFilter * iface, REFERENCE_TIME tStar
TRACE("(%p/%p)->(%s)\n", This, iface, wine_dbgstr_longlong(tStart));
EnterCriticalSection(&This->filter.csFilter);
This->filter.rtStreamStart = tStart;
if (This->filter.state == State_Running)
goto out;
if (This->pInputPin->pin.pConnectedTo)
{
This->filter.rtStreamStart = tStart;
This->pInputPin->end_of_stream = 0;
}
else if (This->filter.filterInfo.pGraph)

View File

@ -304,6 +304,7 @@ HRESULT WINAPI Parser_Run(IBaseFilter * iface, REFERENCE_TIME tStart)
{
HRESULT hr_any = VFW_E_NOT_CONNECTED;
This->filter.rtStreamStart = tStart;
if (This->filter.state == State_Running || This->filter.state == State_Paused)
{
This->filter.state = State_Running;
@ -312,8 +313,6 @@ HRESULT WINAPI Parser_Run(IBaseFilter * iface, REFERENCE_TIME tStart)
return S_OK;
}
This->filter.rtStreamStart = tStart;
for (i = 1; i < (This->cStreams + 1); i++)
{
hr = BaseOutputPinImpl_Active((BaseOutputPin *)This->ppPins[i]);

View File

@ -832,9 +832,9 @@ static HRESULT WINAPI VideoRenderer_Run(IBaseFilter * iface, REFERENCE_TIME tSta
TRACE("(%p/%p)->(%s)\n", This, iface, wine_dbgstr_longlong(tStart));
EnterCriticalSection(&This->filter.csFilter);
This->filter.rtStreamStart = tStart;
if (This->filter.state == State_Running)
goto out;
This->filter.rtStreamStart = tStart;
QualityControlRender_Start(&This->qcimpl, tStart);
if (This->pInputPin->pin.pConnectedTo && (This->filter.state == State_Stopped || !This->pInputPin->end_of_stream))
{