ITypeInfo::Invoke now is able to invoke a function even when it is

provided with a byref argument.
This commit is contained in:
Alberto Massari 2002-11-13 19:36:57 +00:00 committed by Alexandre Julliard
parent 2b6eafa0f9
commit 1a4f5cff4e
1 changed files with 8 additions and 8 deletions

View File

@ -4300,14 +4300,14 @@ static HRESULT WINAPI ITypeInfo_fnInvoke(
if (V_VT(arg) == tdesc->vt) {
memcpy(&args[argspos],&V_UNION(arg,lVal), arglen*sizeof(DWORD));
} else {
if (tdesc->vt == VT_VARIANT) {
memcpy(&args[argspos],arg, arglen*sizeof(DWORD));
} else {
ERR("Set arg %d to disparg type %d vs %d\n",i,
V_VT(arg),tdesc->vt
);
}
} else if(V_ISBYREF(arg) && ((V_VT(arg) & ~VT_BYREF)==tdesc->vt)) {
memcpy(&args[argspos],(void*)V_UNION(arg,lVal), arglen*sizeof(DWORD));
} else if (tdesc->vt == VT_VARIANT) {
memcpy(&args[argspos],arg, arglen*sizeof(DWORD));
} else {
ERR("Set arg %d to disparg type %d vs %d\n",i,
V_VT(arg),tdesc->vt
);
}
argspos += arglen;
} else {