From: Conor McCarthy cmccarthy@codeweavers.com
--- dlls/mfsrcsnk/media_source.c | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/dlls/mfsrcsnk/media_source.c b/dlls/mfsrcsnk/media_source.c index c4c05e647ae..5fe5a4af6e7 100644 --- a/dlls/mfsrcsnk/media_source.c +++ b/dlls/mfsrcsnk/media_source.c @@ -812,7 +812,10 @@ static HRESULT media_stream_async_request(struct media_stream *stream, IMFAsyncR if (source->state == SOURCE_SHUTDOWN) hr = MF_E_SHUTDOWN; else if (source->state == SOURCE_RUNNING && SUCCEEDED(hr = object_queue_pop(&stream->samples, (IUnknown **)&sample))) + { media_stream_send_sample(stream, sample, token); + IMFSample_Release(sample); + } else if (SUCCEEDED(hr = object_queue_push(&stream->tokens, token)) && source->state == SOURCE_RUNNING) queue_media_source_read(source);