Commit 97b9e9c3 authored by Maarten Lankhorst's avatar Maarten Lankhorst Committed by Alexandre Julliard

quartz: Make sure at least 1 sample is processed before returning.

parent 405e21d5
...@@ -1382,7 +1382,11 @@ static void CALLBACK PullPin_Thread_Process(ULONG_PTR iface) ...@@ -1382,7 +1382,11 @@ static void CALLBACK PullPin_Thread_Process(ULONG_PTR iface)
TRACE("Start\n"); TRACE("Start\n");
while (This->rtCurrent < This->rtStop && hr == S_OK && !This->stop_playback) if (This->rtCurrent >= This->rtStop)
{
FIXME("Send an EndOfStream?\n");
}
else do
{ {
/* FIXME: to improve performance by quite a bit this should be changed /* FIXME: to improve performance by quite a bit this should be changed
* so that one sample is processed while one sample is fetched. However, * so that one sample is processed while one sample is fetched. However,
...@@ -1427,7 +1431,7 @@ static void CALLBACK PullPin_Thread_Process(ULONG_PTR iface) ...@@ -1427,7 +1431,7 @@ static void CALLBACK PullPin_Thread_Process(ULONG_PTR iface)
if (pSample) if (pSample)
IMediaSample_Release(pSample); IMediaSample_Release(pSample);
} } while (This->rtCurrent < This->rtStop && hr == S_OK && !This->stop_playback);
CoUninitialize(); CoUninitialize();
EnterCriticalSection(This->pin.pCritSec); EnterCriticalSection(This->pin.pCritSec);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment