mirror of
git://source.winehq.org/git/wine.git
synced 2024-11-05 18:01:34 +00:00
- A name in an SLTG typelib only beginning with 0xff is the indicator
of an offset, instead of any non alpha-numeric character. - Any dispatch interface should have the fixed vtable size, not just dual ones. - Warn when ITypeInfo_GetDocumentation fails.
This commit is contained in:
parent
c232ce43e2
commit
6b3b110d31
1 changed files with 3 additions and 2 deletions
|
@ -2916,7 +2916,7 @@ static SLTG_TypeInfoTail *SLTG_ProcessInterface(char *pBlk, ITypeInfoImpl *pTI,
|
|||
paramName = NULL;
|
||||
HaveOffs = TRUE;
|
||||
}
|
||||
else if(!isalnum(*(paramName-1)))
|
||||
else if((unsigned char)paramName[-1] == 0xff)
|
||||
HaveOffs = TRUE;
|
||||
|
||||
pArg++;
|
||||
|
@ -4176,7 +4176,7 @@ static HRESULT WINAPI ITypeInfo_fnGetTypeAttr( ITypeInfo2 *iface,
|
|||
if(This->TypeAttr.typekind == TKIND_ALIAS) /* need to deep copy typedesc */
|
||||
copy_typedesc(&(*ppTypeAttr)->tdescAlias, &This->TypeAttr.tdescAlias);
|
||||
|
||||
if((*ppTypeAttr)->typekind == TKIND_DISPATCH && (*ppTypeAttr)->wTypeFlags & TYPEFLAG_FDUAL) {
|
||||
if((*ppTypeAttr)->typekind == TKIND_DISPATCH) {
|
||||
(*ppTypeAttr)->cFuncs = (*ppTypeAttr)->cbSizeVft / 4; /* This should include all the inherited
|
||||
funcs */
|
||||
(*ppTypeAttr)->cbSizeVft = 28; /* This is always the size of IDispatch's vtbl */
|
||||
|
@ -5120,6 +5120,7 @@ static HRESULT WINAPI ITypeInfo_fnGetDocumentation( ITypeInfo2 *iface,
|
|||
return S_OK;
|
||||
}
|
||||
}
|
||||
WARN("member %ld not found\n", memid);
|
||||
return TYPE_E_ELEMENTNOTFOUND;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue