[PATCH v2 3/4] mf: Generate missing MEStreamSinkPaused event in the sample grabber.

Giovanni Mascellani gmascellani at codeweavers.com
Fri May 28 02:50:48 CDT 2021


Signed-off-by: Giovanni Mascellani <gmascellani at codeweavers.com>
---
 dlls/mf/samplegrabber.c | 2 ++
 dlls/mf/tests/mf.c      | 5 +----
 2 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/dlls/mf/samplegrabber.c b/dlls/mf/samplegrabber.c
index f60ce2a8433..815e3f60feb 100644
--- a/dlls/mf/samplegrabber.c
+++ b/dlls/mf/samplegrabber.c
@@ -1171,6 +1171,8 @@ static HRESULT WINAPI sample_grabber_clock_sink_OnClockPause(IMFClockStateSink *
 
     TRACE("%p, %s.\n", iface, debugstr_time(systime));
 
+    IMFStreamSink_QueueEvent(&grabber->IMFStreamSink_iface, MEStreamSinkPaused, &GUID_NULL, S_OK, NULL);
+
     return IMFSampleGrabberSinkCallback_OnClockPause(sample_grabber_get_callback(grabber), systime);
 }
 
diff --git a/dlls/mf/tests/mf.c b/dlls/mf/tests/mf.c
index da7e40c67fa..3dd3a36626f 100644
--- a/dlls/mf/tests/mf.c
+++ b/dlls/mf/tests/mf.c
@@ -3116,10 +3116,7 @@ static void test_sample_grabber(void)
 
     hr = IMFClockStateSink_OnClockPause(css, MFGetSystemTime());
     ok(hr == S_OK, "Failed to pause clock, hr %#x.\n", hr);
-    if (strcmp(winetest_platform, "wine") != 0)
-        expect_event(stream, MEStreamSinkPaused);
-    else
-        todo_wine ok(0, "MEStreamSinkPaused event was not sent.\n");
+    expect_event(stream, MEStreamSinkPaused);
 
     hr = IMFClockStateSink_OnClockStop(css, MFGetSystemTime());
     ok(hr == S_OK, "Failed to stop clock, hr %#x.\n", hr);
-- 
2.32.0.rc0




More information about the wine-devel mailing list