Module: wine Branch: master Commit: 0fddb3f02748da4e2b22cdeafc33ec21b50e1461 URL: https://source.winehq.org/git/wine.git/?a=commit;h=0fddb3f02748da4e2b22cdeaf...
Author: Zebediah Figura z.figura12@gmail.com Date: Tue Feb 18 23:19:11 2020 -0600
qasf/dmowrapper: Call IMediaObject::Flush() when cleaning up the stream.
Signed-off-by: Zebediah Figura zfigura@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/qasf/dmowrapper.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+)
diff --git a/dlls/qasf/dmowrapper.c b/dlls/qasf/dmowrapper.c index 7a18d0ba07..9480d3b95b 100644 --- a/dlls/qasf/dmowrapper.c +++ b/dlls/qasf/dmowrapper.c @@ -358,11 +358,25 @@ static HRESULT dmo_wrapper_query_interface(struct strmbase_filter *iface, REFIID return E_NOINTERFACE; }
+static HRESULT dmo_wrapper_cleanup_stream(struct strmbase_filter *iface) +{ + struct dmo_wrapper *filter = impl_from_strmbase_filter(iface); + IMediaObject *dmo; + + IUnknown_QueryInterface(filter->dmo, &IID_IMediaObject, (void **)&dmo); + + IMediaObject_Flush(dmo); + + IMediaObject_Release(dmo); + return S_OK; +} + static struct strmbase_filter_ops filter_ops = { .filter_get_pin = dmo_wrapper_get_pin, .filter_destroy = dmo_wrapper_destroy, .filter_query_interface = dmo_wrapper_query_interface, + .filter_cleanup_stream = dmo_wrapper_cleanup_stream, };
HRESULT dmo_wrapper_create(IUnknown *outer, IUnknown **out)