[PATCH 1/4] oleaut32: Don't correct cbSizeInstance for TKIND_ALIAS
Andrew Eikum
aeikum at codeweavers.com
Tue Aug 20 09:56:57 CDT 2013
---
dlls/oleaut32/typelib.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/dlls/oleaut32/typelib.c b/dlls/oleaut32/typelib.c
index 118e1f0..b396f17 100644
--- a/dlls/oleaut32/typelib.c
+++ b/dlls/oleaut32/typelib.c
@@ -2536,12 +2536,12 @@ static ITypeInfoImpl * MSFT_DoTypeInfo(
ptiRet->guid = MSFT_ReadGuid(tiBase.posguid, pcx);
ptiRet->lcid=pLibInfo->set_lcid; /* FIXME: correct? */
ptiRet->lpstrSchema=NULL; /* reserved */
+ ptiRet->typekind=tiBase.typekind & 0xF;
ptiRet->cbSizeInstance=tiBase.size;
#ifdef _WIN64
- if(pLibInfo->syskind == SYS_WIN32)
+ if(pLibInfo->syskind == SYS_WIN32 && ptiRet->typekind != TKIND_ALIAS)
ptiRet->cbSizeInstance=sizeof(void*);
#endif
- ptiRet->typekind=tiBase.typekind & 0xF;
ptiRet->cFuncs=LOWORD(tiBase.cElement);
ptiRet->cVars=HIWORD(tiBase.cElement);
ptiRet->cbAlignment=(tiBase.typekind >> 11 )& 0x1F; /* there are more flags there */
--
1.8.3.4
More information about the wine-patches
mailing list