[PATCH 0/1] MR9439: mf: Return E_NOINTERFACE if service is missing
Signed-off-by: Aric Stewart <aric(a)codeweavers.com> -- https://gitlab.winehq.org/wine/wine/-/merge_requests/9439
From: Aric Stewart <aric(a)codeweavers.com> Signed-off-by: Aric Stewart <aric(a)codeweavers.com> --- dlls/mf/session.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/dlls/mf/session.c b/dlls/mf/session.c index 30bfdd62cba..8d2ca079634 100644 --- a/dlls/mf/session.c +++ b/dlls/mf/session.c @@ -2732,7 +2732,10 @@ static HRESULT WINAPI session_get_service_GetService(IMFGetService *iface, REFGU hr = session_get_audio_render_service(session, service, riid, obj); } else + { FIXME("Unsupported service %s.\n", debugstr_guid(service)); + hr = E_NOINTERFACE; + } LeaveCriticalSection(&session->cs); -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/9439
Could you please add a test? The change looks correct. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/9439#note_121719
If you have access to application that triggered this, could you check which service GUID was queried? Maybe it's another thing we should fix. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/9439#note_121836
Powerpoint 2016 playing a wav file is the trigger. It is trying to query the MF_WORKQUEUE_SERVICES GUID, which looks like a lot of work. I just found that this fix worked while triaging the issue. I am building windows VM to run and verify my test. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/9439#note_121837
participants (3)
-
Aric Stewart -
Aric Stewart (@aricstewart) -
Nikolay Sivov (@nsivov)