From: Brendan McGrath <bmcgrath@codeweavers.com> On Windows, if IMFMediaEngine::TransferVideoFrame is called after the video has finished, then the last video frame presented is returned. --- dlls/mfmediaengine/video_frame_sink.c | 7 ------- 1 file changed, 7 deletions(-) diff --git a/dlls/mfmediaengine/video_frame_sink.c b/dlls/mfmediaengine/video_frame_sink.c index 301a2bcd03a..095282532ea 100644 --- a/dlls/mfmediaengine/video_frame_sink.c +++ b/dlls/mfmediaengine/video_frame_sink.c @@ -165,13 +165,6 @@ static void video_frame_sink_sample_queue_flush(struct video_frame_sink *sink) queue->used = 0; queue->front = 0; queue->back = ARRAY_SIZE(queue->samples) - 1; - - if (queue->presentation_sample) - { - IMFSample_Release(queue->presentation_sample); - queue->presentation_sample = NULL; - queue->sample_presented = FALSE; - } } static void video_frame_sink_sample_queue_free(struct video_frame_sink *sink) -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/10306