From 26aae271bbad7e3ac83519e32e77ee5bde680c68 Mon Sep 17 00:00:00 2001 From: Nikolay Sivov Date: Mon, 16 Nov 2020 17:50:23 +0300 Subject: [PATCH] evr/presenter: Expose all interfaces for MR_VIDEO_RENDER_SERVICE. Signed-off-by: Nikolay Sivov Signed-off-by: Alexandre Julliard --- dlls/evr/presenter.c | 13 +------------ dlls/evr/tests/evr.c | 10 ++++++++-- 2 files changed, 9 insertions(+), 14 deletions(-) diff --git a/dlls/evr/presenter.c b/dlls/evr/presenter.c index 97b9029c70e..84ef223e0fc 100644 --- a/dlls/evr/presenter.c +++ b/dlls/evr/presenter.c @@ -1254,18 +1254,7 @@ static HRESULT WINAPI video_presenter_getservice_GetService(IMFGetService *iface return IDirect3DDeviceManager9_QueryInterface(presenter->device_manager, riid, obj); if (IsEqualGUID(&MR_VIDEO_RENDER_SERVICE, service)) - { - if (IsEqualIID(riid, &IID_IMFVideoDisplayControl) || - IsEqualIID(riid, &IID_IMFVideoPositionMapper)) - { - return IMFVideoPresenter_QueryInterface(&presenter->IMFVideoPresenter_iface, riid, obj); - } - else - { - FIXME("Unsupported interface %s.\n", debugstr_guid(riid)); - return E_NOTIMPL; - } - } + return IMFVideoPresenter_QueryInterface(&presenter->IMFVideoPresenter_iface, riid, obj); FIXME("Unimplemented service %s.\n", debugstr_guid(service)); diff --git a/dlls/evr/tests/evr.c b/dlls/evr/tests/evr.c index 244d4310bbc..c456bcf5653 100644 --- a/dlls/evr/tests/evr.c +++ b/dlls/evr/tests/evr.c @@ -1150,8 +1150,14 @@ static void test_default_presenter(void) check_interface(presenter, &IID_IMFQualityAdvise, TRUE); check_service_interface(presenter, &MR_VIDEO_RENDER_SERVICE, &IID_IMFVideoPositionMapper, TRUE); check_service_interface(presenter, &MR_VIDEO_RENDER_SERVICE, &IID_IMFVideoDisplayControl, TRUE); - todo_wine check_service_interface(presenter, &MR_VIDEO_RENDER_SERVICE, &IID_IMFVideoPresenter, TRUE); - todo_wine check_service_interface(presenter, &MR_VIDEO_RENDER_SERVICE, &IID_IMFClockStateSink, TRUE); + check_service_interface(presenter, &MR_VIDEO_RENDER_SERVICE, &IID_IMFVideoPresenter, TRUE); + check_service_interface(presenter, &MR_VIDEO_RENDER_SERVICE, &IID_IMFClockStateSink, TRUE); + check_service_interface(presenter, &MR_VIDEO_RENDER_SERVICE, &IID_IMFTopologyServiceLookupClient, TRUE); + check_service_interface(presenter, &MR_VIDEO_RENDER_SERVICE, &IID_IQualProp, TRUE); + check_service_interface(presenter, &MR_VIDEO_RENDER_SERVICE, &IID_IMFRateSupport, TRUE); + check_service_interface(presenter, &MR_VIDEO_RENDER_SERVICE, &IID_IMFGetService, TRUE); + check_service_interface(presenter, &MR_VIDEO_RENDER_SERVICE, &IID_IMFVideoDeviceID, TRUE); + check_service_interface(presenter, &MR_VIDEO_RENDER_SERVICE, &IID_IMFQualityAdvise, TRUE); check_service_interface(presenter, &MR_VIDEO_ACCELERATION_SERVICE, &IID_IDirect3DDeviceManager9, TRUE); hr = IMFVideoPresenter_QueryInterface(presenter, &IID_IMFVideoDeviceID, (void **)&deviceid);