quartz: Return the paused timestamp from IMediaSeeking::GetCurrentPosition() if the graph is running asynchronously.
In this case "graph->stream_start" has not yet been set. This fixes a regression with Blazblue Centralfiction, which incorrectly skipped a video. The application called IMediaControl::Run() and IMediaSeeking::GetCurrentPosition() in quick succession, received an incorrect value for the latter, and consequently believed that the video had already finished. Signed-off-by: Zebediah Figura <z.figura12@gmail.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
42bba70a02
commit
78c2f08225
|
@ -2331,7 +2331,7 @@ static HRESULT WINAPI MediaSeeking_GetCurrentPosition(IMediaSeeking *iface, LONG
|
|||
{
|
||||
ret = graph->stream_stop;
|
||||
}
|
||||
else if (graph->state == State_Running && graph->refClock)
|
||||
else if (graph->state == State_Running && !graph->needs_async_run && graph->refClock)
|
||||
{
|
||||
REFERENCE_TIME time;
|
||||
IReferenceClock_GetTime(graph->refClock, &time);
|
||||
|
|
Loading…
Reference in New Issue