Module: wine Branch: master Commit: fcb08263a508d2d29e2f7bf16f376a3ef817208d URL: https://source.winehq.org/git/wine.git/?a=commit;h=fcb08263a508d2d29e2f7bf16...
Author: Nikolay Sivov nsivov@codeweavers.com Date: Tue Nov 17 13:41:37 2020 +0300
evr/presenter: Fix error code for unsupported services.
Signed-off-by: Nikolay Sivov nsivov@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/evr/presenter.c | 2 +- dlls/evr/tests/evr.c | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/dlls/evr/presenter.c b/dlls/evr/presenter.c index 84ef223e0fc..51792cdc2cd 100644 --- a/dlls/evr/presenter.c +++ b/dlls/evr/presenter.c @@ -1258,7 +1258,7 @@ static HRESULT WINAPI video_presenter_getservice_GetService(IMFGetService *iface
FIXME("Unimplemented service %s.\n", debugstr_guid(service));
- return E_NOTIMPL; + return MF_E_UNSUPPORTED_SERVICE; }
static const IMFGetServiceVtbl video_presenter_getservice_vtbl = diff --git a/dlls/evr/tests/evr.c b/dlls/evr/tests/evr.c index 60d74d1a224..55986414a70 100644 --- a/dlls/evr/tests/evr.c +++ b/dlls/evr/tests/evr.c @@ -1129,6 +1129,7 @@ static void test_default_presenter(void) IDirect3DDeviceManager9 *dm; IMFVideoDeviceID *deviceid; HWND hwnd, hwnd2; + IUnknown *unk; DWORD flags; float rate; HRESULT hr; @@ -1162,8 +1163,12 @@ static void test_default_presenter(void) 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_RENDER_SERVICE, &IID_IMFTransform, FALSE); check_service_interface(presenter, &MR_VIDEO_ACCELERATION_SERVICE, &IID_IDirect3DDeviceManager9, TRUE);
+ hr = MFGetService((IUnknown *)presenter, &MR_VIDEO_MIXER_SERVICE, &IID_IUnknown, (void **)&unk); + ok(hr == MF_E_UNSUPPORTED_SERVICE, "Unexpected hr %#x.\n", hr); + hr = IMFVideoPresenter_QueryInterface(presenter, &IID_IMFVideoDeviceID, (void **)&deviceid); ok(hr == S_OK, "Unexpected hr %#x.\n", hr);