quartz: Handle wrong COM aggregation attempts in IClassFactory_CreateInstance.
This commit is contained in:
parent
dc59a05bee
commit
ec9951892b
@ -128,6 +128,9 @@ static HRESULT WINAPI DSCF_CreateInstance(LPCLASSFACTORY iface, LPUNKNOWN pOuter
|
|||||||
TRACE("(%p)->(%p,%s,%p)\n",This,pOuter,debugstr_guid(riid),ppobj);
|
TRACE("(%p)->(%p,%s,%p)\n",This,pOuter,debugstr_guid(riid),ppobj);
|
||||||
|
|
||||||
*ppobj = NULL;
|
*ppobj = NULL;
|
||||||
|
if(pOuter && !IsEqualGUID(&IID_IUnknown, riid))
|
||||||
|
return E_NOINTERFACE;
|
||||||
|
|
||||||
hres = This->pfnCreateInstance(pOuter, (LPVOID *) &punk);
|
hres = This->pfnCreateInstance(pOuter, (LPVOID *) &punk);
|
||||||
if (SUCCEEDED(hres)) {
|
if (SUCCEEDED(hres)) {
|
||||||
hres = IUnknown_QueryInterface(punk, riid, ppobj);
|
hres = IUnknown_QueryInterface(punk, riid, ppobj);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user