strmbase: Don't hold the filter lock while calling IPin::NewSegment().

It's not safe to hold the filter lock from a streaming thread, and
anyway we aren't protecting anything that needs locking.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Zebediah Figura 2019-11-30 19:48:31 -06:00 committed by Alexandre Julliard
parent 2935bab965
commit 3b7ce56908
1 changed files with 0 additions and 2 deletions

View File

@ -495,12 +495,10 @@ static HRESULT WINAPI TransformFilter_InputPin_NewSegment(IPin * iface, REFERENC
TRACE("iface %p, start %s, stop %s, rate %.16e.\n", TRACE("iface %p, start %s, stop %s, rate %.16e.\n",
iface, debugstr_time(tStart), debugstr_time(tStop), dRate); iface, debugstr_time(tStart), debugstr_time(tStop), dRate);
EnterCriticalSection(&pTransform->filter.csFilter);
if (pTransform->pFuncsTable->pfnNewSegment) if (pTransform->pFuncsTable->pfnNewSegment)
hr = pTransform->pFuncsTable->pfnNewSegment(pTransform, tStart, tStop, dRate); hr = pTransform->pFuncsTable->pfnNewSegment(pTransform, tStart, tStop, dRate);
if (SUCCEEDED(hr)) if (SUCCEEDED(hr))
hr = BaseInputPinImpl_NewSegment(iface, tStart, tStop, dRate); hr = BaseInputPinImpl_NewSegment(iface, tStart, tStop, dRate);
LeaveCriticalSection(&pTransform->filter.csFilter);
return hr; return hr;
} }