From: Ziqing Hui <zhui(a)codeweavers.com> --- dlls/qasf/dmowrapper.c | 2 ++ dlls/qasf/tests/dmowrapper.c | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/dlls/qasf/dmowrapper.c b/dlls/qasf/dmowrapper.c index 18d40a5671a..dc3f02d164b 100644 --- a/dlls/qasf/dmowrapper.c +++ b/dlls/qasf/dmowrapper.c @@ -311,6 +311,8 @@ static HRESULT WINAPI dmo_wrapper_sink_Receive(struct strmbase_sink *iface, IMed if (filter->filter.state == State_Stopped) return VFW_E_WRONG_STATE; + if (iface->flushing) + return S_FALSE; IUnknown_QueryInterface(filter->dmo, &IID_IMediaObject, (void **)&dmo); diff --git a/dlls/qasf/tests/dmowrapper.c b/dlls/qasf/tests/dmowrapper.c index 388004de783..72dabd6658f 100644 --- a/dlls/qasf/tests/dmowrapper.c +++ b/dlls/qasf/tests/dmowrapper.c @@ -1823,7 +1823,7 @@ static void test_streaming_events(IMediaControl *control, IPin *sink, IMemInputP ok(testsink2->got_begin_flush == 1, "Got %u calls to IPin::BeginFlush().\n", testsink2->got_begin_flush); hr = IMemInputPin_Receive(input, sample); - todo_wine ok(hr == S_FALSE, "Got hr %#lx.\n", hr); + ok(hr == S_FALSE, "Got hr %#lx.\n", hr); hr = IPin_EndOfStream(sink); todo_wine ok(hr == S_FALSE, "Got hr %#lx.\n", hr); -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/6915