oleaut32: Make ITypeInfo::GetDocumentation work for functions/variables in inherited interfaces.

oldstable
Robert Shearman 2006-10-02 18:25:40 +01:00 committed by Alexandre Julliard
parent 1a2aa7ca3d
commit 65ca6a2f4d
1 changed files with 17 additions and 0 deletions

View File

@ -5579,6 +5579,23 @@ static HRESULT WINAPI ITypeInfo_fnGetDocumentation( ITypeInfo2 *iface,
return S_OK;
}
}
if(This->TypeAttr.cImplTypes &&
(This->TypeAttr.typekind==TKIND_INTERFACE || This->TypeAttr.typekind==TKIND_DISPATCH)) {
/* recursive search */
ITypeInfo *pTInfo;
HRESULT result;
result = ITypeInfo_GetRefTypeInfo(iface, This->impltypelist->hRef,
&pTInfo);
if(SUCCEEDED(result)) {
result = ITypeInfo_GetDocumentation(pTInfo, memid, pBstrName,
pBstrDocString, pdwHelpContext, pBstrHelpFile);
ITypeInfo_Release(pTInfo);
return result;
}
WARN("Could not search inherited interface!\n");
}
WARN("member %ld not found\n", memid);
return TYPE_E_ELEMENTNOTFOUND;
}