Huw Davies : oleaut32:
Fix CreateDispTypeInfo to store the correct number of functions.
Alexandre Julliard
julliard at wine.codeweavers.com
Fri May 18 13:56:09 CDT 2007
Module: wine
Branch: master
Commit: b698b2909b60b72c35743d9691c1da337d9f7423
URL: http://source.winehq.org/git/wine.git/?a=commit;h=b698b2909b60b72c35743d9691c1da337d9f7423
Author: Huw Davies <huw at codeweavers.com>
Date: Fri May 18 13:57:05 2007 +0100
oleaut32: Fix CreateDispTypeInfo to store the correct number of functions.
---
dlls/oleaut32/tests/typelib.c | 5 +++++
dlls/oleaut32/typelib.c | 1 +
2 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/dlls/oleaut32/tests/typelib.c b/dlls/oleaut32/tests/typelib.c
index a963834..d19afd3 100644
--- a/dlls/oleaut32/tests/typelib.c
+++ b/dlls/oleaut32/tests/typelib.c
@@ -350,10 +350,15 @@ static void test_CreateDispTypeInfo(void)
hr = ITypeInfo_GetTypeAttr(pTI2, &pTypeAttr);
ok(hr == S_OK, "hr %08x\n", hr);
ok(pTypeAttr->typekind == TKIND_INTERFACE, "typekind %0x\n", pTypeAttr->typekind);
+ ok(pTypeAttr->cFuncs == 4, "cFuncs %d\n", pTypeAttr->cFuncs);
+ ok(IsEqualGUID(&pTypeAttr->guid, &GUID_NULL), "guid {%08x-...}\n", pTypeAttr->guid.Data1);
+ ok(pTypeAttr->wTypeFlags == 0, "typeflags %08x\n", pTypeAttr->wTypeFlags);
+
ITypeInfo_ReleaseTypeAttr(pTI2, pTypeAttr);
hr = ITypeInfo_GetFuncDesc(pTI2, 0, &pFuncDesc);
ok(hr == S_OK, "hr %08x\n", hr);
+ ok(pFuncDesc->memid == 0x123, "memid %x\n", pFuncDesc->memid);
ok(pFuncDesc->funckind == FUNC_VIRTUAL, "funckind %d\n", pFuncDesc->funckind);
ok(pFuncDesc->invkind == methdata[0].wFlags, "invkind %d\n", pFuncDesc->invkind);
ok(pFuncDesc->callconv == methdata[0].cc, "callconv %d\n", pFuncDesc->callconv);
diff --git a/dlls/oleaut32/typelib.c b/dlls/oleaut32/typelib.c
index a0d4ee4..f3ee2bf 100644
--- a/dlls/oleaut32/typelib.c
+++ b/dlls/oleaut32/typelib.c
@@ -6884,6 +6884,7 @@ HRESULT WINAPI CreateDispTypeInfo(
(*ppFuncDesc)->ctCustData = 0;
(*ppFuncDesc)->pCustData = NULL;
(*ppFuncDesc)->next = NULL;
+ pTIIface->TypeAttr.cFuncs++;
ppFuncDesc = &(*ppFuncDesc)->next;
}
More information about the wine-cvs
mailing list