PATCH: itypeinfo_invoke

Marcus Meissner marcus at jet.franken.de
Sat Mar 1 15:47:57 CST 2003


Hi,

Debugging with Mike gave this unhandled case for ITypeInfo_fnInvoke.

Ciao, Marcus

Changelog:
	Handle VT_PTR->VT_VARIANT arguments of Invoke.

Index: dlls/oleaut32/typelib.c
===================================================================
RCS file: /home/wine/wine/dlls/oleaut32/typelib.c,v
retrieving revision 1.90
diff -u -r1.90 typelib.c
--- dlls/oleaut32/typelib.c	26 Feb 2003 04:36:03 -0000	1.90
+++ dlls/oleaut32/typelib.c	1 Mar 2003 21:11:49 -0000
@@ -4214,6 +4214,11 @@
     UINT arglen = _argsize(vt)*sizeof(DWORD);
     VARTYPE	oldvt;
 
+    if ((vt==VT_PTR) && tdesc && (tdesc->u.lptdesc->vt == VT_VARIANT)) {
+	memcpy(argpos,&arg,sizeof(void*));
+	return S_OK;
+    }
+
     if (V_VT(arg) == vt) {
 	memcpy(argpos, &V_UNION(arg,lVal), arglen);
 	return S_OK;



More information about the wine-patches mailing list