Module: wine Branch: master Commit: 664789cefcf4a5975b4e0f4ed8085d421ea1e75f URL: https://source.winehq.org/git/wine.git/?a=commit;h=664789cefcf4a5975b4e0f4ed... Author: Zebediah Figura <z.figura12(a)gmail.com> Date: Tue Jun 4 17:54:27 2019 -0500 evr: Return E_NOINTERFACE when aggregation is requested with an interface other than IUnknown. Signed-off-by: Zebediah Figura <z.figura12(a)gmail.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/evr/main.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/dlls/evr/main.c b/dlls/evr/main.c index 313d518..ba48207 100644 --- a/dlls/evr/main.c +++ b/dlls/evr/main.c @@ -118,6 +118,10 @@ static HRESULT WINAPI classfactory_CreateInstance(IClassFactory *iface, IUnknown TRACE("(%p)->(%p,%s,%p)\n", This, outer_unk, debugstr_guid(riid), ppobj); *ppobj = NULL; + + if (outer_unk && !IsEqualGUID(riid, &IID_IUnknown)) + return E_NOINTERFACE; + hres = This->pfnCreateInstance(outer_unk, (void **) &unk); if (SUCCEEDED(hres)) {