ole32: Remove an unnecessary QueryInterface in CoRegisterClassObject that CoMarshalInterface will already do.
This commit is contained in:
parent
b1030f59e6
commit
c582136d0b
|
@ -1724,29 +1724,19 @@ HRESULT WINAPI CoRegisterClassObject(
|
|||
*lpdwRegister = newClass->dwCookie;
|
||||
|
||||
if (dwClsContext & CLSCTX_LOCAL_SERVER) {
|
||||
IClassFactory *classfac;
|
||||
|
||||
hr = IUnknown_QueryInterface(newClass->classObject, &IID_IClassFactory,
|
||||
(LPVOID*)&classfac);
|
||||
if (hr) return hr;
|
||||
|
||||
hr = CreateStreamOnHGlobal(0, TRUE, &newClass->pMarshaledData);
|
||||
if (hr) {
|
||||
FIXME("Failed to create stream on hglobal, %x\n", hr);
|
||||
IUnknown_Release(classfac);
|
||||
return hr;
|
||||
}
|
||||
hr = CoMarshalInterface(newClass->pMarshaledData, &IID_IClassFactory,
|
||||
(LPVOID)classfac, MSHCTX_LOCAL, NULL,
|
||||
newClass->classObject, MSHCTX_LOCAL, NULL,
|
||||
MSHLFLAGS_TABLESTRONG);
|
||||
if (hr) {
|
||||
FIXME("CoMarshalInterface failed, %x!\n",hr);
|
||||
IUnknown_Release(classfac);
|
||||
return hr;
|
||||
}
|
||||
|
||||
IUnknown_Release(classfac);
|
||||
|
||||
hr = RPC_StartLocalServer(&newClass->classIdentifier,
|
||||
newClass->pMarshaledData,
|
||||
flags & (REGCLS_MULTIPLEUSE|REGCLS_MULTI_SEPARATE),
|
||||
|
|
Loading…
Reference in New Issue